324 lines
11 KiB
C
324 lines
11 KiB
C
// 00065d30 std::wiostream::wiostream
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
|
|
/* std::wiostream::wiostream(std::wstreambuf*) */
|
|
|
|
void __thiscall std::wiostream::wiostream(wiostream *this,wstreambuf *param_1)
|
|
|
|
{
|
|
int iVar1;
|
|
undefined4 uVar2;
|
|
int iVar3;
|
|
wios_vftable *pwVar4;
|
|
wstreambuf *in_stack_0000000c;
|
|
|
|
iVar1 = *(int *)(param_1 + 4);
|
|
uVar2 = *(undefined4 *)(param_1 + 8);
|
|
iVar3 = *(int *)(iVar1 + -0xc);
|
|
*(int *)this = iVar1;
|
|
*(undefined4 *)(this + iVar3) = uVar2;
|
|
*(undefined4 *)(this + 4) = 0;
|
|
wios::init((wios *)(this + *(int *)(iVar1 + -0xc)),in_stack_0000000c);
|
|
iVar1 = *(int *)(param_1 + 0xc);
|
|
pwVar4 = *(wios_vftable **)(param_1 + 0x10);
|
|
*(int *)(this + 8) = iVar1;
|
|
iVar1 = *(int *)(iVar1 + -0xc);
|
|
((wios *)(this + iVar1 + 8))->vftablePtr = pwVar4;
|
|
wios::init((wios *)(this + iVar1 + 8),in_stack_0000000c);
|
|
iVar1 = *(int *)param_1;
|
|
uVar2 = *(undefined4 *)(param_1 + 0x14);
|
|
*(int *)this = iVar1;
|
|
*(undefined4 *)(this + *(int *)(iVar1 + -0xc)) = uVar2;
|
|
*(undefined4 *)(this + 8) = *(undefined4 *)(param_1 + 0x18);
|
|
return;
|
|
}
|
|
|
|
|
|
// 00065dd0 std::wiostream::wiostream
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.di replaced with injection: get_pc_thunk_di */
|
|
/* std::wiostream::wiostream(std::wstreambuf*) */
|
|
|
|
void __thiscall std::wiostream::wiostream(wiostream *this,wstreambuf *param_1)
|
|
|
|
{
|
|
wios *this_00;
|
|
|
|
this_00 = (wios *)(this + 0xc);
|
|
ios_base::ios_base((ios_base *)this_00);
|
|
*(undefined4 *)(this + 0x7c) = 0;
|
|
*(undefined ***)this = wistream-in-std::wiostream::construction_vftable;
|
|
*(undefined4 *)(this + 0x80) = 0;
|
|
this[0x84] = (wiostream)0x0;
|
|
*(undefined4 *)(this + 0x88) = 0;
|
|
*(undefined4 *)(this + 0x8c) = 0;
|
|
*(undefined4 *)(this + 0x90) = 0;
|
|
*(undefined4 *)(this + 0x94) = 0;
|
|
*(undefined ***)(this + 0xc) = wistream-in-std::wiostream::internal_construction_vftable;
|
|
*(undefined4 *)(this + 4) = 0;
|
|
wios::init(this_00,param_1);
|
|
*(undefined ***)(this + 8) = wostream-in-std::wiostream::construction_vftable;
|
|
*(undefined ***)(this + 0xc) = wostream-in-std::wiostream::internal_construction_vftable;
|
|
wios::init(this_00,param_1);
|
|
*(undefined ***)this = vftable;
|
|
*(undefined ***)(this + 0xc) = internal_vftable;
|
|
*(undefined ***)(this + 8) = internal_vftable;
|
|
return;
|
|
}
|
|
|
|
|
|
// 00065ed0 std::wiostream::~wiostream
|
|
|
|
/* std::wiostream::~wiostream() */
|
|
|
|
void __thiscall std::wiostream::~wiostream(wiostream *this)
|
|
|
|
{
|
|
int iVar1;
|
|
int *in_stack_00000008;
|
|
|
|
iVar1 = *in_stack_00000008;
|
|
*(int *)this = iVar1;
|
|
*(int *)(this + *(int *)(iVar1 + -0xc)) = in_stack_00000008[5];
|
|
*(int *)(this + 8) = in_stack_00000008[6];
|
|
iVar1 = in_stack_00000008[3];
|
|
*(int *)(this + 8) = iVar1;
|
|
*(int *)(this + *(int *)(iVar1 + -0xc) + 8) = in_stack_00000008[4];
|
|
iVar1 = in_stack_00000008[1];
|
|
*(int *)this = iVar1;
|
|
*(int *)(this + *(int *)(iVar1 + -0xc)) = in_stack_00000008[2];
|
|
*(undefined4 *)(this + 4) = 0;
|
|
return;
|
|
}
|
|
|
|
|
|
// 00065f20 std::wiostream::wiostream
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
|
|
/* std::wiostream::wiostream() */
|
|
|
|
void __thiscall std::wiostream::wiostream(wiostream *this)
|
|
|
|
{
|
|
int iVar1;
|
|
int iVar2;
|
|
int iVar3;
|
|
wios_vftable *pwVar4;
|
|
int *in_stack_00000008;
|
|
|
|
iVar1 = in_stack_00000008[1];
|
|
iVar2 = in_stack_00000008[2];
|
|
iVar3 = *(int *)(iVar1 + -0xc);
|
|
*(int *)this = iVar1;
|
|
*(int *)(this + iVar3) = iVar2;
|
|
*(undefined4 *)(this + 4) = 0;
|
|
wios::init((wios *)(this + *(int *)(iVar1 + -0xc)),(wstreambuf *)0x0);
|
|
iVar1 = in_stack_00000008[3];
|
|
pwVar4 = (wios_vftable *)in_stack_00000008[4];
|
|
*(int *)(this + 8) = iVar1;
|
|
iVar1 = *(int *)(iVar1 + -0xc);
|
|
((wios *)(this + iVar1 + 8))->vftablePtr = pwVar4;
|
|
wios::init((wios *)(this + iVar1 + 8),(wstreambuf *)0x0);
|
|
iVar1 = *in_stack_00000008;
|
|
iVar2 = in_stack_00000008[5];
|
|
*(int *)this = iVar1;
|
|
*(int *)(this + *(int *)(iVar1 + -0xc)) = iVar2;
|
|
*(int *)(this + 8) = in_stack_00000008[6];
|
|
return;
|
|
}
|
|
|
|
|
|
// 00065fc0 std::wiostream::wiostream
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.di replaced with injection: get_pc_thunk_di */
|
|
/* std::wiostream::wiostream() */
|
|
|
|
void __thiscall std::wiostream::wiostream(wiostream *this)
|
|
|
|
{
|
|
wios *this_00;
|
|
|
|
this_00 = (wios *)(this + 0xc);
|
|
ios_base::ios_base((ios_base *)this_00);
|
|
*(undefined4 *)(this + 0x7c) = 0;
|
|
*(undefined ***)this = wistream-in-std::wiostream::construction_vftable;
|
|
*(undefined4 *)(this + 0x80) = 0;
|
|
this[0x84] = (wiostream)0x0;
|
|
*(undefined4 *)(this + 0x88) = 0;
|
|
*(undefined4 *)(this + 0x8c) = 0;
|
|
*(undefined4 *)(this + 0x90) = 0;
|
|
*(undefined4 *)(this + 0x94) = 0;
|
|
*(undefined ***)(this + 0xc) = wistream-in-std::wiostream::internal_construction_vftable;
|
|
*(undefined4 *)(this + 4) = 0;
|
|
wios::init(this_00,(wstreambuf *)0x0);
|
|
*(undefined ***)(this + 8) = wostream-in-std::wiostream::construction_vftable;
|
|
*(undefined ***)(this + 0xc) = wostream-in-std::wiostream::internal_construction_vftable;
|
|
wios::init(this_00,(wstreambuf *)0x0);
|
|
*(undefined ***)this = vftable;
|
|
*(undefined ***)(this + 0xc) = internal_vftable;
|
|
*(undefined ***)(this + 8) = internal_vftable;
|
|
return;
|
|
}
|
|
|
|
|
|
// 000660c0 std::wiostream::wiostream
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
|
|
/* std::wiostream::wiostream(std::wiostream&&) */
|
|
|
|
void __thiscall std::wiostream::wiostream(wiostream *this,wiostream *param_1)
|
|
|
|
{
|
|
ios_base iVar1;
|
|
int iVar2;
|
|
undefined4 uVar3;
|
|
int iVar4;
|
|
ios_base *piVar5;
|
|
wios *this_00;
|
|
int *in_stack_0000000c;
|
|
|
|
iVar2 = *(int *)(param_1 + 4);
|
|
uVar3 = *(undefined4 *)(param_1 + 8);
|
|
iVar4 = *(int *)(iVar2 + -0xc);
|
|
*(int *)this = iVar2;
|
|
*(undefined4 *)(this + iVar4) = uVar3;
|
|
*(int *)(this + 4) = in_stack_0000000c[1];
|
|
this_00 = (wios *)(this + *(int *)(iVar2 + -0xc));
|
|
piVar5 = (ios_base *)(*(int *)(*in_stack_0000000c + -0xc) + (int)in_stack_0000000c);
|
|
ios_base::_M_move((ios_base *)this_00,piVar5);
|
|
wios::_M_cache_locale(this_00,(locale *)&(this_00->data).field_0x68);
|
|
(this_00->data).offset_0xf = (wstreambuf *)0x0;
|
|
uVar3 = *(undefined4 *)(piVar5 + 0x70);
|
|
*(undefined4 *)(piVar5 + 0x70) = 0;
|
|
(this_00->data).offset_0x3 = uVar3;
|
|
iVar1 = piVar5[0x78];
|
|
(this_00->data).offset_0x7 = *(undefined4 *)(piVar5 + 0x74);
|
|
(this_00->data).offset_0xb = iVar1;
|
|
iVar2 = *(int *)(param_1 + 0xc);
|
|
in_stack_0000000c[1] = 0;
|
|
uVar3 = *(undefined4 *)(param_1 + 0x10);
|
|
*(int *)(this + 8) = iVar2;
|
|
*(undefined4 *)(this + *(int *)(iVar2 + -0xc) + 8) = uVar3;
|
|
iVar2 = *(int *)param_1;
|
|
uVar3 = *(undefined4 *)(param_1 + 0x14);
|
|
*(int *)this = iVar2;
|
|
*(undefined4 *)(this + *(int *)(iVar2 + -0xc)) = uVar3;
|
|
*(undefined4 *)(this + 8) = *(undefined4 *)(param_1 + 0x18);
|
|
return;
|
|
}
|
|
|
|
|
|
// 00066170 std::wiostream::wiostream
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.di replaced with injection: get_pc_thunk_di */
|
|
/* std::wiostream::wiostream(std::wiostream&&) */
|
|
|
|
void __thiscall std::wiostream::wiostream(wiostream *this,wiostream *param_1)
|
|
|
|
{
|
|
wios *this_00;
|
|
undefined4 uVar1;
|
|
int iVar2;
|
|
ios_base *piVar3;
|
|
|
|
this_00 = (wios *)(this + 0xc);
|
|
ios_base::ios_base((ios_base *)this_00);
|
|
*(undefined4 *)(this + 0x7c) = 0;
|
|
*(undefined ***)this = wistream-in-std::wiostream::construction_vftable;
|
|
*(undefined ***)(this + 0xc) = wistream-in-std::wiostream::internal_construction_vftable;
|
|
uVar1 = *(undefined4 *)(param_1 + 4);
|
|
*(undefined4 *)(this + 0x80) = 0;
|
|
*(undefined4 *)(this + 4) = uVar1;
|
|
iVar2 = *(int *)param_1;
|
|
this[0x84] = (wiostream)0x0;
|
|
*(undefined4 *)(this + 0x88) = 0;
|
|
iVar2 = *(int *)(iVar2 + -0xc);
|
|
*(undefined4 *)(this + 0x8c) = 0;
|
|
*(undefined4 *)(this + 0x90) = 0;
|
|
piVar3 = (ios_base *)(param_1 + iVar2);
|
|
*(undefined4 *)(this + 0x94) = 0;
|
|
ios_base::_M_move((ios_base *)this_00,piVar3);
|
|
wios::_M_cache_locale(this_00,(locale *)(this + 0x78));
|
|
*(undefined4 *)(this + 0x88) = 0;
|
|
uVar1 = *(undefined4 *)(piVar3 + 0x70);
|
|
*(undefined4 *)(piVar3 + 0x70) = 0;
|
|
*(undefined4 *)(this + 0x7c) = uVar1;
|
|
*(undefined4 *)(this + 0x80) = *(undefined4 *)(piVar3 + 0x74);
|
|
*(ios_base *)(this + 0x84) = piVar3[0x78];
|
|
*(undefined4 *)(param_1 + 4) = 0;
|
|
*(undefined ***)this = vftable;
|
|
*(undefined ***)(this + 0xc) = internal_vftable;
|
|
*(undefined ***)(this + 8) = internal_vftable;
|
|
return;
|
|
}
|
|
|
|
|
|
// 00066290 std::wiostream::operator=
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
|
|
/* std::wiostream::TEMPNAMEPLACEHOLDERVALUE(std::wiostream&&) */
|
|
|
|
wiostream * __thiscall std::wiostream::operator=(wiostream *this,wiostream *param_1)
|
|
|
|
{
|
|
undefined1 uVar1;
|
|
undefined4 uVar2;
|
|
wios *this_00;
|
|
wios *this_01;
|
|
|
|
this_01 = (wios *)(this + *(int *)(*(int *)this + -0xc));
|
|
this_00 = (wios *)(param_1 + *(int *)(*(int *)param_1 + -0xc));
|
|
ios_base::_M_swap((ios_base *)this_01,(ios_base *)this_00);
|
|
wios::_M_cache_locale(this_01,(locale *)&(this_01->data).field_0x68);
|
|
wios::_M_cache_locale(this_00,(locale *)&(this_00->data).field_0x68);
|
|
uVar2 = (this_01->data).offset_0x3;
|
|
(this_01->data).offset_0x3 = (this_00->data).offset_0x3;
|
|
(this_00->data).offset_0x3 = uVar2;
|
|
uVar2 = (this_01->data).offset_0x7;
|
|
(this_01->data).offset_0x7 = (this_00->data).offset_0x7;
|
|
uVar1 = (this_01->data).offset_0xb;
|
|
(this_00->data).offset_0x7 = uVar2;
|
|
(this_01->data).offset_0xb = (this_00->data).offset_0xb;
|
|
uVar2 = *(undefined4 *)(this + 4);
|
|
(this_00->data).offset_0xb = uVar1;
|
|
*(undefined4 *)(this + 4) = *(undefined4 *)(param_1 + 4);
|
|
*(undefined4 *)(param_1 + 4) = uVar2;
|
|
return this;
|
|
}
|
|
|
|
|
|
// 00066320 std::wiostream::swap
|
|
|
|
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
|
|
/* std::wiostream::swap(std::wiostream&) */
|
|
|
|
void __thiscall std::wiostream::swap(wiostream *this,wiostream *param_1)
|
|
|
|
{
|
|
undefined1 uVar1;
|
|
undefined4 uVar2;
|
|
wios *this_00;
|
|
wios *this_01;
|
|
|
|
this_01 = (wios *)(this + *(int *)(*(int *)this + -0xc));
|
|
this_00 = (wios *)(param_1 + *(int *)(*(int *)param_1 + -0xc));
|
|
ios_base::_M_swap((ios_base *)this_01,(ios_base *)this_00);
|
|
wios::_M_cache_locale(this_01,(locale *)&(this_01->data).field_0x68);
|
|
wios::_M_cache_locale(this_00,(locale *)&(this_00->data).field_0x68);
|
|
uVar2 = (this_01->data).offset_0x3;
|
|
(this_01->data).offset_0x3 = (this_00->data).offset_0x3;
|
|
(this_00->data).offset_0x3 = uVar2;
|
|
uVar2 = (this_01->data).offset_0x7;
|
|
(this_01->data).offset_0x7 = (this_00->data).offset_0x7;
|
|
uVar1 = (this_01->data).offset_0xb;
|
|
(this_00->data).offset_0x7 = uVar2;
|
|
(this_01->data).offset_0xb = (this_00->data).offset_0xb;
|
|
uVar2 = *(undefined4 *)(this + 4);
|
|
(this_00->data).offset_0xb = uVar1;
|
|
*(undefined4 *)(this + 4) = *(undefined4 *)(param_1 + 4);
|
|
*(undefined4 *)(param_1 + 4) = uVar2;
|
|
return;
|
|
}
|
|
|
|
|