Function at 0x4a70d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xec
mov ebp, dword [esp + 0x104]
mov ebx, dword [esp + 0x108]
test ebp, ebp
je 0x4a7540
mov eax, dword [ecx + 4]
mov edx, dword [ecx + 8]
sub edx, eax
sar edx, 3
imul edx, edx, 0x3cf3cf3d
cmp ebp, edx
jbe 0x4a7550
mov edi, ecx
mov ecx, dword [ecx]
mov edx, eax
mov esi, 0x1861861
sub edx, ecx
sar edx, 3
imul edx, edx, 0x3cf3cf3d
sub esi, edx
cmp ebp, esi
ja 0x4a7eb8
cmp edx, ebp
mov esi, ebp
cmovae esi, edx
add edx, esi
jb 0x4a7140
cmp edx, 0x1861861
jbe 0x4a7e73
mov esi, dword [esp + 0x100]
mov dword [esp + 0x18], 0xffffffa8
sub esi, ecx
mov eax, dword [esp + 0x18]
mov dword [esp], eax
call sub.libstdc_6.dll_operator_new_unsigned_int_
mov ecx, dword [edi]
mov dword [esp + 0x10], eax
mov eax, dword [edi + 4]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x20], eax
add edx, esi
mov esi, ebp
test edx, edx
je 0x4a724b
fld qword [ebx + 8]
mov eax, dword [ebx + 0x20]
mov dword [edx], vtable.et.0
fstp qword [edx + 8]
fld qword [ebx + 0x10]
fstp qword [edx + 0x10]
fld qword [ebx + 0x18]
mov dword [edx + 0x20], eax
mov eax, dword [ebx + 0x24]
fstp qword [edx + 0x18]
mov dword [edx + 0x24], eax
mov eax, dword [ebx + 0x28]
mov dword [edx + 0x28], eax
mov eax, dword [ebx + 0x2c]
mov dword [edx + 0x2c], eax
mov eax, dword [ebx + 0x30]
mov dword [edx + 0x30], eax
mov eax, dword [ebx + 0x34]
mov dword [edx + 0x34], eax
mov eax, dword [ebx + 0x38]
mov dword [edx + 0x38], eax
mov eax, dword [ebx + 0x3c]
mov dword [edx + 0x3c], eax
mov eax, dword [ebx + 0x40]
mov dword [edx + 0x40], eax
mov eax, dword [ebx + 0x44]
mov dword [edx + 0x44], eax
mov eax, dword [ebx + 0x48]
mov dword [edx + 0x48], eax
mov eax, dword [ebx + 0x4c]
mov dword [edx + 0x4c], eax
mov eax, dword [ebx + 0x50]
mov dword [edx + 0x50], eax
mov eax, dword [ebx + 0x54]
mov dword [edx + 0x54], eax
mov eax, dword [ebx + 0x58]
mov dword [edx + 0x58], eax
mov eax, dword [ebx + 0x5c]
mov dword [edx + 0x5c], eax
mov eax, dword [ebx + 0x60]
mov dword [edx + 0x60], eax
mov eax, dword [ebx + 0x64]
mov dword [edx + 0x68], vtable.et.0
mov dword [edx + 0x64], eax
fld qword [ebx + 0x70]
fstp qword [edx + 0x70]
fld qword [ebx + 0x78]
fstp qword [edx + 0x78]
fld qword [ebx + 0x80]
mov dword [edx + 0x88], vtable.et.0
fstp qword [edx + 0x80]
fld qword [ebx + 0x90]
fstp qword [edx + 0x90]
fld qword [ebx + 0x98]
fstp qword [edx + 0x98]
fld qword [ebx + 0xa0]
fstp qword [edx + 0xa0]
add edx, 0xa8
sub esi, 1
jne 0x4a7172
cmp dword [esp + 0x100], ecx
mov eax, dword [esp + 0x20]
je 0x4a7e95
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x100]
mov ebx, ecx
nop
lea esi, [esi]
test edx, edx
je 0x4a7359
fld qword [ebx + 8]
mov eax, dword [ebx + 0x20]
mov dword [edx], vtable.et.0
fstp qword [edx + 8]
fld qword [ebx + 0x10]
fstp qword [edx + 0x10]
fld qword [ebx + 0x18]
mov dword [edx + 0x20], eax
mov eax, dword [ebx + 0x24]
fstp qword [edx + 0x18]
mov dword [edx + 0x24], eax
mov eax, dword [ebx + 0x28]
mov dword [edx + 0x28], eax
mov eax, dword [ebx + 0x2c]
mov dword [edx + 0x2c], eax
mov eax, dword [ebx + 0x30]
mov dword [edx + 0x30], eax
mov eax, dword [ebx + 0x34]
mov dword [edx + 0x34], eax
mov eax, dword [ebx + 0x38]
mov dword [edx + 0x38], eax
mov eax, dword [ebx + 0x3c]
mov dword [edx + 0x3c], eax
mov eax, dword [ebx + 0x40]
mov dword [edx + 0x40], eax
mov eax, dword [ebx + 0x44]
mov dword [edx + 0x44], eax
mov eax, dword [ebx + 0x48]
mov dword [edx + 0x48], eax
mov eax, dword [ebx + 0x4c]
mov dword [edx + 0x4c], eax
mov eax, dword [ebx + 0x50]
mov dword [edx + 0x50], eax
mov eax, dword [ebx + 0x54]
mov dword [edx + 0x54], eax
mov eax, dword [ebx + 0x58]
mov dword [edx + 0x58], eax
mov eax, dword [ebx + 0x5c]
mov dword [edx + 0x5c], eax
mov eax, dword [ebx + 0x60]
mov dword [edx + 0x60], eax
mov eax, dword [ebx + 0x64]
mov dword [edx + 0x68], vtable.et.0
mov dword [edx + 0x64], eax
fld qword [ebx + 0x70]
fstp qword [edx + 0x70]
fld qword [ebx + 0x78]
fstp qword [edx + 0x78]
fld qword [ebx + 0x80]
mov dword [edx + 0x88], vtable.et.0
fstp qword [edx + 0x80]
fld qword [ebx + 0x90]
fstp qword [edx + 0x90]
fld qword [ebx + 0x98]
fstp qword [edx + 0x98]
fld qword [ebx + 0xa0]
fstp qword [edx + 0xa0]
add ebx, 0xa8
add edx, 0xa8
cmp esi, ebx
jne 0x4a7280
mov esi, dword [esp + 0x100]
lea edx, [ecx + 0xa8]
mov eax, dword [esp + 0x20]
sub esi, edx
mov edx, esi
shr edx, 3
imul edx, edx, 0x1cf3cf3d
and edx, 0x1fffffff
add edx, 1
imul edx, edx, 0xa8
add edx, dword [esp + 0x10]
imul ebp, ebp, 0xa8
add ebp, edx
cmp dword [esp + 0x100], eax
je 0x4a74da
mov ebx, dword [esp + 0x100]
mov edx, ebp
lea esi, [esi]
test edx, edx
je 0x4a7499
fld qword [ebx + 8]
mov esi, dword [ebx + 0x20]
mov dword [edx], vtable.et.0
fstp qword [edx + 8]
fld qword [ebx + 0x10]
fstp qword [edx + 0x10]
fld qword [ebx + 0x18]
mov dword [edx + 0x20], esi
mov esi, dword [ebx + 0x24]
fstp qword [edx + 0x18]
mov dword [edx + 0x24], esi
mov esi, dword [ebx + 0x28]
mov dword [edx + 0x28], esi
mov esi, dword [ebx + 0x2c]
mov dword [edx + 0x2c], esi
mov esi, dword [ebx + 0x30]
mov dword [edx + 0x30], esi
mov esi, dword [ebx + 0x34]
mov dword [edx + 0x34], esi
mov esi, dword [ebx + 0x38]
mov dword [edx + 0x38], esi
mov esi, dword [ebx + 0x3c]
mov dword [edx + 0x3c], esi
mov esi, dword [ebx + 0x40]
mov dword [edx + 0x40], esi
mov esi, dword [ebx + 0x44]
mov dword [edx + 0x44], esi
mov esi, dword [ebx + 0x48]
mov dword [edx + 0x48], esi
mov esi, dword [ebx + 0x4c]
mov dword [edx + 0x4c], esi
mov esi, dword [ebx + 0x50]
mov dword [edx + 0x50], esi
mov esi, dword [ebx + 0x54]
mov dword [edx + 0x54], esi
mov esi, dword [ebx + 0x58]
mov dword [edx + 0x58], esi
mov esi, dword [ebx + 0x5c]
mov dword [edx + 0x5c], esi
mov esi, dword [ebx + 0x60]
mov dword [edx + 0x60], esi
mov esi, dword [ebx + 0x64]
mov dword [edx + 0x68], vtable.et.0
mov dword [edx + 0x64], esi
fld qword [ebx + 0x70]
fstp qword [edx + 0x70]
fld qword [ebx + 0x78]
fstp qword [edx + 0x78]
fld qword [ebx + 0x80]
mov dword [edx + 0x88], vtable.et.0
fstp qword [edx + 0x80]
fld qword [ebx + 0x90]
fstp qword [edx + 0x90]
fld qword [ebx + 0x98]
fstp qword [edx + 0x98]
fld qword [ebx + 0xa0]
fstp qword [edx + 0xa0]
add ebx, 0xa8
add edx, 0xa8
cmp ebx, eax
jne 0x4a73c0
mov esi, dword [esp + 0x100]
lea edx, [esi + 0xa8]
mov esi, eax
sub esi, edx
mov edx, esi
shr edx, 3
imul edx, edx, 0x1cf3cf3d
and edx, 0x1fffffff
add edx, 1
imul edx, edx, 0xa8
add ebp, edx
cmp ecx, eax
mov edx, ecx
je 0x4a74ea
add edx, 0xa8
cmp edx, eax
jne 0x4a74e0
test ecx, ecx
je 0x4a74f6
mov dword [esp], ecx
call sub.libstdc_6.dll_operator_delete_void_
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov dword [edi + 4], ebp
add edx, eax
mov dword [edi], eax
mov dword [edi + 8], edx
jmp 0x4a7540
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0x4a7540
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0x4a7540
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
nop
add esp, 0xec
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov edx, dword [ebx + 0x28]
fld qword [ebx + 8]
mov esi, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
fst qword [esp + 0x10]
mov dword [esp + 0x38], vtable.et.0
mov dword [esp + 0x60], edx
mov edx, dword [ebx + 0x2c]
fstp qword [esp + 0x40]
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x64], edx
mov edx, dword [ebx + 0x30]
fld qword [ebx + 0x10]
fst qword [esp + 0x20]
mov dword [esp + 0x68], edx
mov edx, dword [ebx + 0x34]
fstp qword [esp + 0x48]
mov dword [esp + 0x6c], edx
mov edx, dword [ebx + 0x38]
fld qword [ebx + 0x18]
fst qword [esp + 0x50]
mov dword [esp + 0x70], edx
mov edx, dword [ebx + 0x3c]
mov dword [esp + 0x74], edx
mov edx, dword [ebx + 0x40]
mov dword [esp + 0x78], edx
mov edx, dword [ebx + 0x44]
mov dword [esp + 0x7c], edx
mov edx, dword [ebx + 0x48]
mov dword [esp + 0x80], edx
mov edx, dword [ebx + 0x4c]
mov dword [esp + 0x84], edx
mov edx, dword [ebx + 0x50]
fld qword [ebx + 0x70]
mov dword [esp + 0xa0], vtable.et.0
mov dword [esp + 0xc0], vtable.et.0
fst qword [esp + 0xa8]
mov dword [esp + 0x88], edx
mov edx, dword [ebx + 0x54]
fld qword [ebx + 0x78]
mov dword [esp + 0x8c], edx
mov edx, dword [ebx + 0x58]
fst qword [esp + 0xb0]
fld qword [ebx + 0x80]
mov dword [esp + 0x90], edx
mov edx, dword [ebx + 0x5c]
fst qword [esp + 0xb8]
fld qword [ebx + 0x90]
mov dword [esp + 0x94], edx
mov edx, dword [ebx + 0x60]
fst qword [esp + 0xc8]
fld qword [ebx + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [ebx + 0x64]
fst qword [esp + 0xd0]
fld qword [ebx + 0xa0]
mov ebx, eax
sub ebx, dword [esp + 0x100]
mov dword [esp + 0x9c], edx
fst qword [esp + 0xd8]
mov edx, ebx
mov dword [esp + 0x28], ebx
sar edx, 3
imul edx, edx, 0x3cf3cf3d
cmp ebp, edx
jae 0x4a7a61
imul ebx, ebp, 0xa8
mov edx, eax
sub edx, ebx
mov dword [esp + 0x18], ebx
mov ebx, eax
cmp eax, edx
mov ebp, edx
je 0x4a77a1
mov dword [esp + 0x28], edx
mov esi, esi
lea edi, [edi]
test ebx, ebx
je 0x4a7789
fld qword [ebp + 8]
mov edx, dword [ebp + 0x20]
mov dword [ebx], vtable.et.0
fstp qword [ebx + 8]
fld qword [ebp + 0x10]
fstp qword [ebx + 0x10]
fld qword [ebp + 0x18]
mov dword [ebx + 0x20], edx
mov edx, dword [ebp + 0x24]
fstp qword [ebx + 0x18]
mov dword [ebx + 0x24], edx
mov edx, dword [ebp + 0x28]
mov dword [ebx + 0x28], edx
mov edx, dword [ebp + 0x2c]
mov dword [ebx + 0x2c], edx
mov edx, dword [ebp + 0x30]
mov dword [ebx + 0x30], edx
mov edx, dword [ebp + 0x34]
mov dword [ebx + 0x34], edx
mov edx, dword [ebp + 0x38]
mov dword [ebx + 0x38], edx
mov edx, dword [ebp + 0x3c]
mov dword [ebx + 0x3c], edx
mov edx, dword [ebp + 0x40]
mov dword [ebx + 0x40], edx
mov edx, dword [ebp + 0x44]
mov dword [ebx + 0x44], edx
mov edx, dword [ebp + 0x48]
mov dword [ebx + 0x48], edx
mov edx, dword [ebp + 0x4c]
mov dword [ebx + 0x4c], edx
mov edx, dword [ebp + 0x50]
mov dword [ebx + 0x50], edx
mov edx, dword [ebp + 0x54]
mov dword [ebx + 0x54], edx
mov edx, dword [ebp + 0x58]
mov dword [ebx + 0x58], edx
mov edx, dword [ebp + 0x5c]
mov dword [ebx + 0x5c], edx
mov edx, dword [ebp + 0x60]
mov dword [ebx + 0x60], edx
mov edx, dword [ebp + 0x64]
mov dword [ebx + 0x68], vtable.et.0
mov dword [ebx + 0x64], edx
fld qword [ebp + 0x70]
fstp qword [ebx + 0x70]
fld qword [ebp + 0x78]
fstp qword [ebx + 0x78]
fld qword [ebp + 0x80]
mov dword [ebx + 0x88], vtable.et.0
fstp qword [ebx + 0x80]
fld qword [ebp + 0x90]
fstp qword [ebx + 0x90]
fld qword [ebp + 0x98]
fstp qword [ebx + 0x98]
fld qword [ebp + 0xa0]
fstp qword [ebx + 0xa0]
add ebp, 0xa8
add ebx, 0xa8
cmp eax, ebp
jne 0x4a76b0
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x18]
mov ebp, eax
add ebx, eax
mov dword [ecx + 4], ebx
mov ecx, edx
sub ecx, dword [esp + 0x100]
mov ebx, ecx
sub ebp, ecx
sar ebx, 3
mov ecx, ebp
imul ebx, ebx, 0x3cf3cf3d
test ebx, ebx
jle 0x4a78a5
lea esi, [esi]
sub edx, 0xa8
sub eax, 0xa8
cmp edx, eax
je 0x4a789d
fld qword [edx + 8]
mov ebx, dword [edx + 0x20]
fstp qword [eax + 8]
fld qword [edx + 0x10]
fstp qword [eax + 0x10]
fld qword [edx + 0x18]
mov dword [eax + 0x20], ebx
mov ebx, dword [edx + 0x24]
fstp qword [eax + 0x18]
mov dword [eax + 0x24], ebx
mov ebx, dword [edx + 0x28]
mov dword [eax + 0x28], ebx
mov ebx, dword [edx + 0x2c]
mov dword [eax + 0x2c], ebx
mov ebx, dword [edx + 0x30]
mov dword [eax + 0x30], ebx
mov ebx, dword [edx + 0x34]
mov dword [eax + 0x34], ebx
mov ebx, dword [edx + 0x38]
mov dword [eax + 0x38], ebx
mov ebx, dword [edx + 0x3c]
mov dword [eax + 0x3c], ebx
mov ebx, dword [edx + 0x40]
mov dword [eax + 0x40], ebx
mov ebx, dword [edx + 0x44]
mov dword [eax + 0x44], ebx
mov ebx, dword [edx + 0x48]
mov dword [eax + 0x48], ebx
mov ebx, dword [edx + 0x4c]
mov dword [eax + 0x4c], ebx
mov ebx, dword [edx + 0x50]
mov dword [eax + 0x50], ebx
mov ebx, dword [edx + 0x54]
mov dword [eax + 0x54], ebx
mov ebx, dword [edx + 0x58]
mov dword [eax + 0x58], ebx
mov ebx, dword [edx + 0x5c]
mov dword [eax + 0x5c], ebx
mov ebx, dword [edx + 0x60]
mov dword [eax + 0x60], ebx
mov ebx, dword [edx + 0x64]
mov dword [eax + 0x64], ebx
fld qword [edx + 0x70]
fstp qword [eax + 0x70]
fld qword [edx + 0x78]
fstp qword [eax + 0x78]
fld qword [edx + 0x80]
fstp qword [eax + 0x80]
fld qword [edx + 0x90]
fstp qword [eax + 0x90]
fld qword [edx + 0x98]
fstp qword [eax + 0x98]
fld qword [edx + 0xa0]
fstp qword [eax + 0xa0]
cmp eax, ecx
jne 0x4a77d0
mov ebp, dword [esp + 0x18]
add ebp, dword [esp + 0x100]
lea ecx, [esp + 0x38]
mov eax, dword [esp + 0x100]
cmp eax, ebp
je 0x4a750a
fld qword [esp + 0x20]
fxch st(7)
fstp qword [esp + 0x18]
jmp 0x4a79b8
fld qword [esp + 0x10]
mov dword [eax + 0x20], esi
mov dword [eax + 0x24], edi
fstp qword [eax + 8]
fxch st(6)
fst qword [eax + 0x10]
fld qword [esp + 0x18]
fstp qword [eax + 0x18]
fxch st(5)
mov edx, dword [esp + 0x60]
mov dword [eax + 0x28], edx
mov edx, dword [esp + 0x64]
mov dword [eax + 0x2c], edx
mov edx, dword [esp + 0x68]
mov dword [eax + 0x30], edx
mov edx, dword [esp + 0x6c]
mov dword [eax + 0x34], edx
mov edx, dword [esp + 0x70]
mov dword [eax + 0x38], edx
mov edx, dword [esp + 0x74]
mov dword [eax + 0x3c], edx
mov edx, dword [esp + 0x78]
mov dword [eax + 0x40], edx
mov edx, dword [esp + 0x7c]
mov dword [eax + 0x44], edx
mov edx, dword [esp + 0x80]
mov dword [eax + 0x48], edx
mov edx, dword [esp + 0x84]
mov dword [eax + 0x4c], edx
mov edx, dword [esp + 0x88]
mov dword [eax + 0x50], edx
mov edx, dword [esp + 0x8c]
mov dword [eax + 0x54], edx
mov edx, dword [esp + 0x90]
mov dword [eax + 0x58], edx
mov edx, dword [esp + 0x94]
mov dword [eax + 0x5c], edx
mov edx, dword [esp + 0x98]
mov dword [eax + 0x60], edx
mov edx, dword [esp + 0x9c]
fst qword [eax + 0x70]
fxch st(4)
fst qword [eax + 0x78]
fxch st(3)
mov dword [eax + 0x64], edx
fst qword [eax + 0x80]
fxch st(2)
fst qword [eax + 0x90]
fxch st(1)
fst qword [eax + 0x98]
fxch st(6)
fst qword [eax + 0xa0]
add eax, 0xa8
cmp ebp, eax
je 0x4a7520
fxch st(1)
fxch st(2)
fxch st(3)
fxch st(4)
fxch st(5)
fxch st(6)
fxch st(1)
cmp eax, ecx
jne 0x4a78d2
fxch st(1)
fxch st(6)
fxch st(5)
fxch st(4)
fxch st(3)
fxch st(2)
fxch st(1)
mov edx, dword [esp + 0x60]
mov dword [eax + 0x20], esi
mov dword [eax + 0x24], edi
mov dword [eax + 0x28], edx
mov edx, dword [esp + 0x64]
mov dword [eax + 0x2c], edx
mov edx, dword [esp + 0x68]
mov dword [eax + 0x30], edx
mov edx, dword [esp + 0x6c]
mov dword [eax + 0x34], edx
mov edx, dword [esp + 0x70]
mov dword [eax + 0x38], edx
mov edx, dword [esp + 0x74]
mov dword [eax + 0x3c], edx
mov edx, dword [esp + 0x78]
mov dword [eax + 0x40], edx
mov edx, dword [esp + 0x7c]
mov dword [eax + 0x44], edx
mov edx, dword [esp + 0x80]
mov dword [eax + 0x48], edx
mov edx, dword [esp + 0x84]
mov dword [eax + 0x4c], edx
mov edx, dword [esp + 0x88]
mov dword [eax + 0x50], edx
mov edx, dword [esp + 0x8c]
mov dword [eax + 0x54], edx
mov edx, dword [esp + 0x90]
mov dword [eax + 0x58], edx
mov edx, dword [esp + 0x94]
mov dword [eax + 0x5c], edx
mov edx, dword [esp + 0x98]
mov dword [eax + 0x60], edx
mov edx, dword [esp + 0x9c]
mov dword [eax + 0x64], edx
jmp 0x4a799d
sub ebp, edx
mov edx, eax
test ebp, ebp
mov ebx, ebp
je 0x4a7ba3
fld qword [esp + 0x20]
mov dword [esp + 0x2c], eax
fstp qword [esp + 0x18]
jmp 0x4a7a8e
fxch st(1)
fxch st(2)
fxch st(3)
fxch st(4)
fxch st(5)
fxch st(6)
fxch st(1)
test edx, edx
je 0x4a7b80
mov eax, dword [esp + 0x60]
fld qword [esp + 0x10]
mov dword [edx], vtable.et.0
mov dword [edx + 0x20], esi
fstp qword [edx + 8]
mov dword [edx + 0x24], edi
mov dword [edx + 0x28], eax
mov eax, dword [esp + 0x64]
fld qword [esp + 0x18]
mov dword [edx + 0x2c], eax
mov eax, dword [esp + 0x68]
fstp qword [edx + 0x10]
fxch st(6)
fst qword [edx + 0x18]
fxch st(5)
mov dword [edx + 0x30], eax
mov eax, dword [esp + 0x6c]
mov dword [edx + 0x34], eax
mov eax, dword [esp + 0x70]
mov dword [edx + 0x38], eax
mov eax, dword [esp + 0x74]
mov dword [edx + 0x3c], eax
mov eax, dword [esp + 0x78]
mov dword [edx + 0x40], eax
mov eax, dword [esp + 0x7c]
mov dword [edx + 0x44], eax
mov eax, dword [esp + 0x80]
mov dword [edx + 0x48], eax
mov eax, dword [esp + 0x84]
mov dword [edx + 0x4c], eax
mov eax, dword [esp + 0x88]
mov dword [edx + 0x50], eax
mov eax, dword [esp + 0x8c]
mov dword [edx + 0x54], eax
mov eax, dword [esp + 0x90]
mov dword [edx + 0x58], eax
fst qword [edx + 0x70]
fxch st(4)
mov eax, dword [esp + 0x94]
mov dword [edx + 0x68], vtable.et.0
mov dword [edx + 0x88], vtable.et.0
fst qword [edx + 0x78]
fxch st(3)
mov dword [edx + 0x5c], eax
mov eax, dword [esp + 0x98]
fst qword [edx + 0x80]
fxch st(2)
fst qword [edx + 0x90]
fxch st(1)
mov dword [edx + 0x60], eax
mov eax, dword [esp + 0x9c]
fst qword [edx + 0x98]
fxch st(6)
fst qword [edx + 0xa0]
mov dword [edx + 0x64], eax
jmp 0x4a7b8e
fxch st(1)
fxch st(6)
fxch st(5)
fxch st(4)
fxch st(3)
fxch st(2)
fxch st(1)
add edx, 0xa8
sub ebx, 1
jne 0x4a7a80
mov eax, dword [esp + 0x2c]
jmp 0x4a7bb1
fxch st(1)
fxch st(6)
fxch st(5)
fxch st(4)
fxch st(3)
fxch st(2)
fxch st(1)
imul ebp, ebp, 0xa8
mov ebx, dword [esp + 0x100]
add ebp, eax
cmp eax, ebx
mov dword [ecx + 4], ebp
mov edx, ebp
je 0x4a7e9e
mov dword [esp + 0x18], ecx
test edx, edx
je 0x4a7caa
fld qword [ebx + 8]
mov ecx, dword [ebx + 0x20]
mov dword [edx], vtable.et.0
fstp qword [edx + 8]
fld qword [ebx + 0x10]
fstp qword [edx + 0x10]
fld qword [ebx + 0x18]
mov dword [edx + 0x20], ecx
mov ecx, dword [ebx + 0x24]
fstp qword [edx + 0x18]
mov dword [edx + 0x24], ecx
mov ecx, dword [ebx + 0x28]
mov dword [edx + 0x28], ecx
mov ecx, dword [ebx + 0x2c]
mov dword [edx + 0x2c], ecx
mov ecx, dword [ebx + 0x30]
mov dword [edx + 0x30], ecx
mov ecx, dword [ebx + 0x34]
mov dword [edx + 0x34], ecx
mov ecx, dword [ebx + 0x38]
mov dword [edx + 0x38], ecx
mov ecx, dword [ebx + 0x3c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [ebx + 0x40]
mov dword [edx + 0x40], ecx
mov ecx, dword [ebx + 0x44]
mov dword [edx + 0x44], ecx
mov ecx, dword [ebx + 0x48]
mov dword [edx + 0x48], ecx
mov ecx, dword [ebx + 0x4c]
mov dword [edx + 0x4c], ecx
mov ecx, dword [ebx + 0x50]
mov dword [edx + 0x50], ecx
mov ecx, dword [ebx + 0x54]
mov dword [edx + 0x54], ecx
mov ecx, dword [ebx + 0x58]
mov dword [edx + 0x58], ecx
mov ecx, dword [ebx + 0x5c]
mov dword [edx + 0x5c], ecx
mov ecx, dword [ebx + 0x60]
mov dword [edx + 0x60], ecx
mov ecx, dword [ebx + 0x64]
mov dword [edx + 0x68], vtable.et.0
mov dword [edx + 0x64], ecx
fld qword [ebx + 0x70]
fstp qword [edx + 0x70]
fld qword [ebx + 0x78]
fstp qword [edx + 0x78]
fld qword [ebx + 0x80]
mov dword [edx + 0x88], vtable.et.0
fstp qword [edx + 0x80]
fld qword [ebx + 0x90]
fstp qword [edx + 0x90]
fld qword [ebx + 0x98]
fstp qword [edx + 0x98]
fld qword [ebx + 0xa0]
fstp qword [edx + 0xa0]
add ebx, 0xa8
add edx, 0xa8
cmp eax, ebx
jne 0x4a7bd1
add ebp, dword [esp + 0x28]
mov ecx, dword [esp + 0x18]
fld qword [esp + 0x20]
fxch st(6)
mov edx, dword [esp + 0x100]
fstp qword [esp + 0x18]
mov dword [ecx + 4], ebp
lea ecx, [esp + 0x38]
jmp 0x4a7dca
fld qword [esp + 0x10]
mov dword [edx + 0x20], esi
mov dword [edx + 0x24], edi
fstp qword [edx + 8]
fxch st(5)
fst qword [edx + 0x10]
fld qword [esp + 0x18]
fstp qword [edx + 0x18]
fxch st(4)
mov ebx, dword [esp + 0x60]
mov dword [edx + 0x28], ebx
mov ebx, dword [esp + 0x64]
mov dword [edx + 0x2c], ebx
mov ebx, dword [esp + 0x68]
mov dword [edx + 0x30], ebx
mov ebx, dword [esp + 0x6c]
mov dword [edx + 0x34], ebx
mov ebx, dword [esp + 0x70]
mov dword [edx + 0x38], ebx
mov ebx, dword [esp + 0x74]
mov dword [edx + 0x3c], ebx
mov ebx, dword [esp + 0x78]
mov dword [edx + 0x40], ebx
mov ebx, dword [esp + 0x7c]
mov dword [edx + 0x44], ebx
mov ebx, dword [esp + 0x80]
mov dword [edx + 0x48], ebx
mov ebx, dword [esp + 0x84]
mov dword [edx + 0x4c], ebx
mov ebx, dword [esp + 0x88]
mov dword [edx + 0x50], ebx
mov ebx, dword [esp + 0x8c]
mov dword [edx + 0x54], ebx
mov ebx, dword [esp + 0x90]
mov dword [edx + 0x58], ebx
mov ebx, dword [esp + 0x94]
mov dword [edx + 0x5c], ebx
mov ebx, dword [esp + 0x98]
mov dword [edx + 0x60], ebx
mov ebx, dword [esp + 0x9c]
fst qword [edx + 0x70]
fxch st(3)
fst qword [edx + 0x78]
fxch st(2)
mov dword [edx + 0x64], ebx
fst qword [edx + 0x80]
fxch st(1)
fst qword [edx + 0x90]
fxch st(6)
fst qword [edx + 0x98]
fxch st(5)
fst qword [edx + 0xa0]
add edx, 0xa8
cmp eax, edx
je 0x4a7530
fxch st(1)
fxch st(2)
fxch st(3)
fxch st(4)
fxch st(5)
fxch st(6)
fxch st(1)
cmp edx, ecx
jne 0x4a7ce3
fxch st(1)
fxch st(6)
fxch st(5)
fxch st(4)
fxch st(3)
fxch st(2)
fxch st(1)
mov ebx, dword [esp + 0x60]
mov dword [edx + 0x20], esi
mov dword [edx + 0x24], edi
mov dword [edx + 0x28], ebx
mov ebx, dword [esp + 0x64]
mov dword [edx + 0x2c], ebx
mov ebx, dword [esp + 0x68]
mov dword [edx + 0x30], ebx
mov ebx, dword [esp + 0x6c]
mov dword [edx + 0x34], ebx
mov ebx, dword [esp + 0x70]
mov dword [edx + 0x38], ebx
mov ebx, dword [esp + 0x74]
mov dword [edx + 0x3c], ebx
mov ebx, dword [esp + 0x78]
mov dword [edx + 0x40], ebx
mov ebx, dword [esp + 0x7c]
mov dword [edx + 0x44], ebx
mov ebx, dword [esp + 0x80]
mov dword [edx + 0x48], ebx
mov ebx, dword [esp + 0x84]
mov dword [edx + 0x4c], ebx
mov ebx, dword [esp + 0x88]
mov dword [edx + 0x50], ebx
mov ebx, dword [esp + 0x8c]
mov dword [edx + 0x54], ebx
mov ebx, dword [esp + 0x90]
mov dword [edx + 0x58], ebx
mov ebx, dword [esp + 0x94]
mov dword [edx + 0x5c], ebx
mov ebx, dword [esp + 0x98]
mov dword [edx + 0x60], ebx
mov ebx, dword [esp + 0x9c]
mov dword [edx + 0x64], ebx
jmp 0x4a7dae
mov esi, dword [esp + 0x100]
sub esi, ecx
test edx, edx
jne 0x4a7ec4
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
jmp 0x4a7166
mov edx, dword [esp + 0x10]
jmp 0x4a739e
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
add ebp, dword [esp + 0x28]
mov dword [ecx + 4], ebp
jmp 0x4a7540
mov dword [esp], str.vector::_M_fill_insert
call fcn.00488088
imul eax, edx, 0xa8
mov dword [esp + 0x18], eax
jmp 0x4a7151