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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5eb357
mov eax, dword fs:[0]
push eax
sub esp, 0x1b0
mov eax, dword [0x638190]
xor eax, esp
mov dword [esp + 0x1a8], eax
push ebx
push esi
push edi
mov eax, dword [0x638190]
xor eax, esp
push eax
lea eax, [esp + 0x1c0]
mov dword fs:[0], eax
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
lea ecx, [esp + 0x84]
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x20], esi
call fcn.005bfee0
mov dword [esp + 0x1c8], 0
test esi, esi
jne 0x5571a9
lea esi, [esp + 0x84]
mov dword [esp + 0x20], esi
jmp 0x5571ad
mov esi, dword [esp + 0x20]
push edi
lea ecx, [esp + 0xc8]
call fcn.0051a020
push ebx
lea ecx, [esp + 0x94]
mov byte [esp + 0x1cc], 1
call fcn.0051a020
mov eax, dword [esp + 0xd0]
mov byte [esp + 0x1c8], 2
cmp eax, dword [esp + 0x9c]
jne 0x557f77
push 0x11
lea ecx, [esp + 0xc8]
call fcn.00519a20
push 0x11
lea ecx, [esp + 0x94]
call fcn.00519a20
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
cmp eax, ecx
jne 0x557f77
xor ecx, ecx
xor ebx, ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
cmp eax, ecx
je 0x557461
mov edi, eax
mov edx, 0x18
mul edx
seto cl
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call sub.MSVCR90.dll_void____cdecl_operator_new___unsigned_int_
add esp, 4
mov dword [esp + 0x14], eax
mov byte [esp + 0x1c8], 3
test eax, eax
je 0x55728a
push 0x5547b0
push 0x5547a0
push edi
lea esi, [eax + 4]
push 0x18
push esi
mov dword [eax], edi
call fcn.005c3e4c
mov edi, esi
jmp 0x55728c
xor edi, edi
mov byte [esp + 0x1c8], 2
mov dword [esp + 0x28], edi
test edi, edi
jne 0x5572e3
push 0x304
call fcn.005c2bc0
add esp, 4
mov esi, eax
lea ecx, [esp + 0x90]
mov byte [esp + 0x1c8], 1
call fcn.0051a750
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], 0
call fcn.0051a750
mov dword [esp + 0x1c8], 0xffffffff
jmp 0x557b19
mov ebx, dword [esp + 0x4c]
xor ecx, ecx
mov eax, ebx
mov edx, 0x18
mul edx
seto cl
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call sub.MSVCR90.dll_void____cdecl_operator_new___unsigned_int_
add esp, 4
mov dword [esp + 0x14], eax
mov byte [esp + 0x1c8], 4
test eax, eax
je 0x557338
push 0x5547b0
push 0x5547a0
push ebx
lea esi, [eax + 4]
push 0x18
push esi
mov dword [eax], ebx
call fcn.005c3e4c
jmp 0x55733a
xor esi, esi
mov ebx, esi
mov byte [esp + 0x1c8], 2
mov dword [esp + 0x2c], ebx
test esi, esi
jne 0x5573ac
mov ecx, dword [edi - 4]
push 0x5547b0
lea esi, [edi - 4]
push ecx
push 0x18
push edi
call fcn.005c3de9
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
push 0x304
call fcn.005c2bc0
add esp, 8
lea ecx, [esp + 0x90]
mov esi, eax
mov byte [esp + 0x1c8], 1
call fcn.0051a750
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], bl
call fcn.0051a750
mov dword [esp + 0x1c8], 0xffffffff
jmp 0x557b19
lea edx, [esp + 0xd8]
push edx
lea ecx, [esp + 0x78]
call fcn.005bebf0
mov eax, dword [esp + 0x78]
mov byte [esp + 0x1c8], 5
test eax, eax
je 0x557434
mov esi, edi
mov bl, 6
add eax, 0xffffffec
mov dword [esi], eax
mov ecx, dword [esp + 0x78]
test ecx, ecx
je 0x5573e3
add ecx, 0xffffffec
jmp 0x5573e5
xor ecx, ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x2c]
lea edx, [esp + 0x50]
push edx
call eax
push eax
lea ecx, [esi + 4]
mov byte [esp + 0x1cc], bl
call fcn.004f0420
lea ecx, [esp + 0x50]
mov byte [esp + 0x1c8], 5
call fcn.00440ab0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x74]
add esi, 0x18
cmp eax, dword [ecx]
jne 0x557425
xor eax, eax
jmp 0x557428
mov eax, dword [eax + 0xc]
mov dword [esp + 0x78], eax
test eax, eax
jne 0x5573d1
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x48]
push 0x5547c0
push 0x18
push edx
push edi
call dword [sym.imp.MSVCR90.dll_qsort]
add esp, 0x10
lea ecx, [esp + 0x74]
mov byte [esp + 0x1c8], 2
call fcn.00440ab0
mov esi, dword [esp + 0x20]
xor ecx, ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x60]
call fcn.005bfee0
mov byte [esp + 0x1c8], 7
or edi, 0xffffffff
lea ecx, [ecx]
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x78]
push edx
push 1
lea eax, [esp + 0xa0]
push eax
lea ecx, [esp + 0xd8]
push ecx
call fcn.00556370
add esp, 0x18
test eax, eax
je 0x557a81
cmp dword [esp + 0x48], 0
jne 0x5574fa
mov eax, dword [esi]
mov ecx, esi
push eax
cmp dword [esp + 0x74], edi
je 0x557b86
mov edx, dword [esp + 0x6c]
fld qword [edx]
fstp qword [esp + 0x120]
call fcn.005bfef0
fld qword [esp + 0x11c]
push 0
lea ecx, [esp + 0x64]
fstp qword [eax]
call fcn.005bfef0
mov dword [esp + 0x60], 0
jmp 0x557a76
cmp dword [esp + 0x70], edi
jne 0x5578c8
mov esi, dword [esp + 0xd4]
mov edi, dword [esp + 0xa0]
lea ecx, [esp + 0x170]
call fcn.004f1250
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.004f1250
lea ecx, [esp + 0x170]
push ecx
mov ecx, esi
mov byte [esp + 0x1cc], 9
call fcn.0056fc30
lea edx, [esp + 0x194]
push edx
mov ecx, edi
call fcn.0056fc30
lea ecx, [esp + 0x30]
call fcn.005bfee0
cmp dword [esp + 0x48], 0
mov ebx, closesocket
mov byte [esp + 0x1c8], 0xa
mov dword [esp + 0x14], ebx
jle 0x55763e
mov eax, dword [esp + 0x48]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x14], eax
lea esp, [esp]
mov edx, dword [edi]
lea ecx, [esp + 0x50]
push ecx
push edx
lea eax, [esp + 0x178]
push eax
call fcn.005a8bc0
mov esi, eax
push ebx
push esi
call fcn.004fa800
add esp, 0x14
test eax, eax
je 0x5575e0
mov ecx, dword [esp + 0x30]
push ecx
lea ecx, [esp + 0x34]
call fcn.005bec90
mov edx, dword [esp + 0x50]
mov dword [eax], edx
mov ecx, dword [esp + 0x54]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x30]
push edx
lea ecx, [esp + 0x34]
call fcn.005bec90
jmp 0x55761f
cmp esi, ebx
jge 0x55762c
push 0
lea ecx, [esp + 0x34]
call fcn.005bec90
push 0
lea ecx, [esp + 0x34]
mov dword [esp + 0x34], 0
call fcn.005bec90
mov ecx, dword [esp + 0x50]
mov dword [eax], ecx
mov edx, dword [esp + 0x54]
mov dword [eax + 4], edx
mov eax, dword [esp + 0x30]
push eax
lea ecx, [esp + 0x34]
call fcn.005bec90
mov ebx, esi
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov edx, dword [esp + 0x5c]
mov dword [eax + 4], edx
add edi, 0x18
sub dword [esp + 0x14], 1
jne 0x557590
mov dword [esp + 0x14], ebx
lea ecx, [esp + 0x3c]
call fcn.005bfee0
lea eax, [esp + 0xa4]
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1cc], 0xb
mov edi, closesocket
call fcn.005bebf0
mov eax, dword [esp + 0x1c]
xor ebx, ebx
mov byte [esp + 0x1c8], 0xc
cmp eax, ebx
je 0x557731
lea ecx, [esp + 0x50]
push ecx
add eax, 0xffffffec
push eax
lea edx, [esp + 0x19c]
push edx
call fcn.005a8bc0
mov esi, eax
push edi
push esi
call fcn.004fa800
add esp, 0x14
test eax, eax
je 0x5576cc
mov eax, dword [esp + 0x3c]
push eax
lea ecx, [esp + 0x40]
call fcn.005bec90
mov ecx, dword [esp + 0x50]
mov dword [eax], ecx
mov edx, dword [esp + 0x54]
mov dword [eax + 4], edx
mov eax, dword [esp + 0x3c]
push eax
lea ecx, [esp + 0x40]
call fcn.005bec90
jmp 0x557705
cmp esi, edi
jge 0x557712
push ebx
lea ecx, [esp + 0x40]
call fcn.005bec90
push ebx
lea ecx, [esp + 0x40]
mov dword [esp + 0x40], ebx
call fcn.005bec90
mov ecx, dword [esp + 0x50]
mov dword [eax], ecx
mov edx, dword [esp + 0x54]
mov dword [eax + 4], edx
mov eax, dword [esp + 0x3c]
push eax
lea ecx, [esp + 0x40]
call fcn.005bec90
mov edi, esi
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov edx, dword [esp + 0x5c]
mov dword [eax + 4], edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
cmp eax, dword [ecx]
jne 0x557722
xor eax, eax
jmp 0x557725
mov eax, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
cmp eax, ebx
jne 0x55767b
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x30]
mov ebx, dword [esp + 0x3c]
push edi
push edx
call fcn.004fa800
add esp, 8
test eax, eax
je 0x557ec1
cmp esi, ebx
jne 0x557ec1
cmp esi, 2
jne 0x557b94
cmp ebx, esi
jne 0x557b94
cmp dword [esp + 0x30], 0
jle 0x557775
mov eax, dword [esp + 0x38]
jmp 0x557780
push 0
lea ecx, [esp + 0x34]
call fcn.005bec90
mov ecx, dword [eax]
mov dword [esp + 0xf0], ecx
mov edx, dword [eax + 4]
mov esi, 1
cmp dword [esp + 0x30], esi
mov dword [esp + 0xf4], edx
jle 0x5577a7
mov eax, dword [esp + 0x38]
add eax, 8
jmp 0x5577b1
push esi
lea ecx, [esp + 0x34]
call fcn.005bec90
cmp dword [esp + 0x3c], 0
mov ecx, dword [eax]
mov dword [esp + 0xf8], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0xfc], edx
jle 0x5577d1
mov eax, dword [esp + 0x44]
jmp 0x5577dc
push 0
lea ecx, [esp + 0x40]
call fcn.005bec90
cmp dword [esp + 0x3c], esi
mov ecx, dword [eax]
mov dword [esp + 0x100], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x104], edx
jle 0x5577fe
mov eax, dword [esp + 0x44]
add eax, 8
jmp 0x557808
push esi
lea ecx, [esp + 0x40]
call fcn.005bec90
mov ecx, dword [eax]
fldz
mov dword [esp + 0x108], ecx
fstp qword [esp + 0xbc]
mov edx, dword [eax + 4]
lea eax, [esp + 0xbc]
push eax
lea ecx, [esp + 0x104]
mov dword [esp + 0x110], edx
push ecx
lea edx, [esp + 0xf8]
push edx
call fcn.00553ca0
fld qword [esp + 0xc8]
mov eax, dword [esp + 0x6c]
fstp qword [esp + 0x138]
add esp, 0xc
push eax
lea ecx, [esp + 0x64]
call fcn.005bfef0
fld qword [esp + 0x12c]
lea ecx, [esp + 0x18]
fstp qword [eax]
mov byte [esp + 0x1c8], 0xb
call fcn.00440ab0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1c8], 0xa
call fcn.005c2ee0
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 9
call fcn.005c2ee0
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.004f1b60
lea ecx, [esp + 0x170]
mov byte [esp + 0x1c8], 7
call fcn.004f1b60
mov ebx, dword [esp + 0x2c]
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x80]
call fcn.005bebf0
cmp dword [esp + 0x80], 0
mov byte [esp + 0x1c8], 0x11
je 0x5579ae
mov edi, ebx
push 0x14
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x14], eax
mov byte [esp + 0x1c8], 0x12
test eax, eax
je 0x557936
mov ecx, dword [esp + 0x80]
test ecx, ecx
je 0x557928
add ecx, 0xffffffec
push ecx
mov ecx, eax
call fcn.00525180
mov esi, eax
jmp 0x557938
xor ecx, ecx
push ecx
mov ecx, eax
call fcn.00525180
mov esi, eax
jmp 0x557938
xor esi, esi
mov edx, dword [esi]
mov eax, dword [edx + 8]
push 0x639088
mov ecx, esi
mov byte [esp + 0x1cc], 0x11
call eax
mov dword [edi], esi
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea eax, [esp + 0x134]
push eax
mov ecx, esi
call edx
push eax
lea ecx, [edi + 4]
mov byte [esp + 0x1cc], 0x13
call fcn.004f0420
lea ecx, [esp + 0x134]
mov byte [esp + 0x1c8], 0x11
call fcn.00440ab0
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x7c]
add edi, 0x18
cmp eax, dword [ecx]
jne 0x55799c
xor eax, eax
jmp 0x55799f
mov eax, dword [eax + 0xc]
mov dword [esp + 0x80], eax
test eax, eax
jne 0x5578f4
mov edx, dword [esp + 0x4c]
push 0x5547c0
push 0x18
push edx
push ebx
call dword [sym.imp.MSVCR90.dll_qsort]
xor esi, esi
add esp, 0x10
cmp dword [esp + 0x48], esi
jle 0x5579f7
mov edi, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
sub ebx, edi
mov eax, dword [ebx + edi]
mov ecx, dword [edi]
push eax
push ecx
call fcn.00554da0
add esp, 8
test eax, eax
je 0x557b4b
inc esi
add edi, 0x18
cmp esi, dword [esp + 0x48]
jl 0x5579d6
cmp dword [esp + 0x60], 0
je 0x557a24
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x557a24
mov eax, dword [esp + 0x68]
mov edx, dword [ecx]
fld qword [eax]
push edx
fstp qword [esp + 0x128]
call fcn.005bfef0
fld qword [esp + 0x124]
fstp qword [eax]
cmp dword [esp + 0x4c], 0
mov ebx, dword [esp + 0x2c]
jle 0x557a4b
mov edi, dword [esp + 0x4c]
mov esi, ebx
mov ecx, dword [esi]
test ecx, ecx
je 0x557a43
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
add esi, 0x18
sub edi, 1
jne 0x557a35
push 0
lea ecx, [esp + 0x64]
call fcn.005bfef0
lea ecx, [esp + 0x7c]
mov dword [esp + 0x60], 0
mov byte [esp + 0x1c8], 7
call fcn.00440ab0
mov esi, dword [esp + 0x20]
or edi, 0xffffffff
cmp dword [esp + 0x24], 0
je 0x557480
cmp dword [esp + 0x28], 0
je 0x557ace
mov eax, dword [esp + 0x28]
mov edx, dword [eax - 4]
lea esi, [eax - 4]
push 0x5547b0
push edx
push 0x18
push eax
call fcn.005c3de9
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
add esp, 4
test ebx, ebx
je 0x557aca
mov eax, dword [ebx - 4]
push 0x5547b0
lea esi, [ebx - 4]
push eax
push 0x18
push ebx
call fcn.005c3de9
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
add esp, 4
mov esi, dword [esp + 0x20]
mov eax, dword [esi]
xor ecx, ecx
test eax, eax
setne cl
mov byte [esp + 0x1c8], 2
mov esi, ecx
lea ecx, [esp + 0x60]
call fcn.005c2ee0
lea ecx, [esp + 0x90]
mov byte [esp + 0x1c8], 1
call fcn.0051a750
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], 0
call fcn.0051a750
mov dword [esp + 0x1c8], edi
lea ecx, [esp + 0x84]
call fcn.005c2ee0
mov eax, esi
mov ecx, dword [esp + 0x1c0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1a8]
xor ecx, esp
call fcn.005c3bb6
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x6c]
push edx
lea ecx, [esp + 0x94]
call fcn.0051a410
push 0x11
lea ecx, [esp + 0x94]
call fcn.00519a20
cmp dword [esp + 0x24], 1
jne 0x557a24
lea ecx, [esp + 0x90]
call fcn.00517f10
jmp 0x557a24
call fcn.005bfef0
fldz
fstp qword [eax]
jmp 0x557a81
sar esi, 1
xor ecx, ecx
mov eax, esi
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR90.dll_void____cdecl_operator_new___unsigned_int_
add esp, 4
xor ebx, ebx
mov dword [esp + 0x24], eax
test esi, esi
jle 0x557bee
mov edi, eax
lea ecx, [ecx]
lea eax, [ebx + ebx]
cmp eax, dword [esp + 0x30]
jge 0x557bd2
mov ecx, dword [esp + 0x38]
lea eax, [ecx + eax*8]
jmp 0x557bdc
push eax
lea ecx, [esp + 0x34]
call fcn.005bec90
mov edx, dword [eax]
mov dword [edi], edx
mov eax, dword [eax + 4]
mov dword [edi + 4], eax
inc ebx
add edi, 8
cmp ebx, esi
jl 0x557bc0
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x170]
push ecx
push esi
push edx
call fcn.0052f650
xor ecx, ecx
mov eax, esi
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR90.dll_void____cdecl_operator_new___unsigned_int_
add esp, 0x10
mov edi, eax
xor ebx, ebx
mov dword [esp + 0x14], edi
test esi, esi
jle 0x557c62
jmp 0x557c30
lea eax, [ebx + ebx]
cmp eax, dword [esp + 0x3c]
jge 0x557c42
mov ecx, dword [esp + 0x44]
lea eax, [ecx + eax*8]
jmp 0x557c4c
push eax
lea ecx, [esp + 0x40]
call fcn.005bec90
mov edx, dword [eax]
mov dword [edi], edx
mov eax, dword [eax + 4]
mov dword [edi + 4], eax
inc ebx
add edi, 8
cmp ebx, esi
jl 0x557c30
mov edi, dword [esp + 0x14]
lea ecx, [esp + 0x194]
push ecx
push esi
push edi
call fcn.0052f650
mov edx, dword [esp + 0x30]
add esp, 0xc
push esi
push edx
lea ecx, [esp + 0x14c]
call fcn.005178e0
push esi
push edi
lea ecx, [esp + 0xf8]
mov byte [esp + 0x1d0], 0xd
call fcn.005178e0
lea eax, [esp + 0xd8]
mov ecx, eax
mov byte [esp + 0x1c8], 0xe
mov dword [esp + 0x18], eax
call fcn.005be9f0
mov dword [esp + 0x1c], eax
test eax, eax
je 0x557d38
mov bl, 0xf
lea ecx, [esp + 0x144]
push ecx
push 0x24
call fcn.00519880
add esp, 8
mov dword [esp + 0x6c], eax
mov byte [esp + 0x1c8], bl
test eax, eax
je 0x557d06
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x557cfa
add ecx, 0xffffffec
push ecx
mov ecx, eax
call fcn.00518d10
jmp 0x557d08
xor ecx, ecx
push ecx
mov ecx, eax
call fcn.00518d10
jmp 0x557d08
xor eax, eax
push eax
lea ecx, [esp + 0x148]
mov byte [esp + 0x1cc], 0xe
call fcn.00519910
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
cmp eax, dword [edx]
jne 0x557d2d
xor eax, eax
jmp 0x557d30
mov eax, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x557cc4
lea eax, [esp + 0xa4]
mov ecx, eax
mov dword [esp + 0x18], eax
call fcn.005be9f0
mov dword [esp + 0x1c], eax
test eax, eax
je 0x557dd4
mov bl, 0x10
jmp 0x557d60
lea ecx, [esp + 0xf0]
push ecx
push 0x24
call fcn.00519880
add esp, 8
mov dword [esp + 0x6c], eax
mov byte [esp + 0x1c8], bl
test eax, eax
je 0x557da2
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x557d96
add ecx, 0xffffffec
push ecx
mov ecx, eax
call fcn.00518d10
jmp 0x557da4
xor ecx, ecx
push ecx
mov ecx, eax
call fcn.00518d10
jmp 0x557da4
xor eax, eax
push eax
lea ecx, [esp + 0xf4]
mov byte [esp + 0x1cc], 0xe
call fcn.00519910
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
cmp eax, dword [edx]
jne 0x557dc9
xor eax, eax
jmp 0x557dcc
mov eax, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x557d60
mov eax, dword [esp + 0x20]
push eax
lea ecx, [esp + 0xf4]
push ecx
lea edx, [esp + 0x14c]
push edx
call fcn.00557130
mov esi, eax
mov eax, dword [esp + 0x30]
push eax
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
push edi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
mov eax, dword [esp + 0x3c]
add esp, 0x14
test eax, eax
je 0x557e28
mov ecx, dword [eax - 4]
lea edi, [eax - 4]
push 0x5547b0
push ecx
push 0x18
push eax
call fcn.005c3de9
push edi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
add esp, 4
lea ecx, [esp + 0xf0]
mov byte [esp + 0x1c8], 0xd
call fcn.0051a750
lea ecx, [esp + 0x144]
mov byte [esp + 0x1c8], 0xc
call fcn.0051a750
lea ecx, [esp + 0x18]
mov byte [esp + 0x1c8], 0xb
call fcn.00440ab0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1c8], 0xa
call fcn.005c2ee0
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 9
call fcn.005c2ee0
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.004f1b60
lea ecx, [esp + 0x170]
mov byte [esp + 0x1c8], 7
call fcn.004f1b60
lea ecx, [esp + 0x60]
mov byte [esp + 0x1c8], 2
call fcn.005c2ee0
jmp 0x5572ab
mov eax, dword [esp + 0x28]
test eax, eax
je 0x557f0b
mov edx, dword [eax - 4]
lea esi, [eax - 4]
push 0x5547b0
push edx
push 0x18
push eax
call fcn.005c3de9
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
mov eax, dword [esp + 0x30]
add esp, 4
test eax, eax
je 0x557f0b
mov ecx, dword [eax - 4]
lea esi, [eax - 4]
push 0x5547b0
push ecx
push 0x18
push eax
call fcn.005c3de9
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
add esp, 4
lea ecx, [esp + 0x18]
mov byte [esp + 0x1c8], 0xb
call fcn.00440ab0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1c8], 0xa
call fcn.005c2ee0
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 9
call fcn.005c2ee0
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.004f1b60
lea ecx, [esp + 0x170]
mov byte [esp + 0x1c8], 7
call fcn.004f1b60
lea ecx, [esp + 0x60]
mov byte [esp + 0x1c8], 2
call fcn.005c2ee0
lea ecx, [esp + 0x90]
mov byte [esp + 0x1c8], 1
call fcn.0051a750
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], 0
call fcn.0051a750
lea ecx, [esp + 0x84]
mov dword [esp + 0x1c8], 0xffffffff
call fcn.005c2ee0
xor eax, eax
jmp 0x557b27