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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x62b307
mov eax, dword fs:[0]
push eax
sub esp, 0x1b0
mov eax, dword [0x685e38]
xor eax, esp
mov dword [esp + 0x1a8], eax
push ebx
push esi
push edi
mov eax, dword [0x685e38]
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.005f3af0
mov dword [esp + 0x1c8], 0
test esi, esi
jne 0x59c3b9
lea esi, [esp + 0x84]
mov dword [esp + 0x20], esi
jmp 0x59c3bd
mov esi, dword [esp + 0x20]
push edi
lea ecx, [esp + 0xc8]
call fcn.005443a0
push ebx
lea ecx, [esp + 0x94]
mov byte [esp + 0x1cc], 1
call fcn.005443a0
mov eax, dword [esp + 0xd0]
mov byte [esp + 0x1c8], 2
cmp eax, dword [esp + 0x9c]
jne 0x59d187
push 0x11
lea ecx, [esp + 0xc8]
call fcn.00543f40
push 0x11
lea ecx, [esp + 0x94]
call fcn.00543f40
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
cmp eax, ecx
jne 0x59d187
xor ecx, ecx
xor ebx, ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
cmp eax, ecx
je 0x59c671
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 0x59c49a
push 0x599980
push 0x599970
push edi
lea esi, [eax + 4]
push 0x18
push esi
mov dword [eax], edi
call fcn.005fbaa7
mov edi, esi
jmp 0x59c49c
xor edi, edi
mov byte [esp + 0x1c8], 2
mov dword [esp + 0x28], edi
test edi, edi
jne 0x59c4f3
push 0x304
call fcn.005f4400
add esp, 4
mov esi, eax
lea ecx, [esp + 0x90]
mov byte [esp + 0x1c8], 1
call fcn.00544ad0
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], 0
call fcn.00544ad0
mov dword [esp + 0x1c8], 0xffffffff
jmp 0x59cd29
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 0x59c548
push 0x599980
push 0x599970
push ebx
lea esi, [eax + 4]
push 0x18
push esi
mov dword [eax], ebx
call fcn.005fbaa7
jmp 0x59c54a
xor esi, esi
mov ebx, esi
mov byte [esp + 0x1c8], 2
mov dword [esp + 0x2c], ebx
test esi, esi
jne 0x59c5bc
mov ecx, dword [edi - 4]
push 0x599980
lea esi, [edi - 4]
push ecx
push 0x18
push edi
call fcn.005fba44
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
push 0x304
call fcn.005f4400
add esp, 8
lea ecx, [esp + 0x90]
mov esi, eax
mov byte [esp + 0x1c8], 1
call fcn.00544ad0
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], bl
call fcn.00544ad0
mov dword [esp + 0x1c8], 0xffffffff
jmp 0x59cd29
lea edx, [esp + 0xd8]
push edx
lea ecx, [esp + 0x78]
call fcn.005eff10
mov eax, dword [esp + 0x78]
mov byte [esp + 0x1c8], 5
test eax, eax
je 0x59c644
mov esi, edi
mov bl, 6
add eax, 0xffffffec
mov dword [esi], eax
mov ecx, dword [esp + 0x78]
test ecx, ecx
je 0x59c5f3
add ecx, 0xffffffec
jmp 0x59c5f5
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.00518080
lea ecx, [esp + 0x50]
mov byte [esp + 0x1c8], 5
call fcn.004f2200
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x74]
add esi, 0x18
cmp eax, dword [ecx]
jne 0x59c635
xor eax, eax
jmp 0x59c638
mov eax, dword [eax + 0xc]
mov dword [esp + 0x78], eax
test eax, eax
jne 0x59c5e1
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x48]
push 0x599990
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.004f2200
mov esi, dword [esp + 0x20]
xor ecx, ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x60]
call fcn.005f3af0
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.0059b580
add esp, 0x18
test eax, eax
je 0x59cc91
cmp dword [esp + 0x48], 0
jne 0x59c70a
mov eax, dword [esi]
mov ecx, esi
push eax
cmp dword [esp + 0x74], edi
je 0x59cd96
mov edx, dword [esp + 0x6c]
fld qword [edx]
fstp qword [esp + 0x120]
call fcn.005f1530
fld qword [esp + 0x11c]
push 0
lea ecx, [esp + 0x64]
fstp qword [eax]
call fcn.005f1530
mov dword [esp + 0x60], 0
jmp 0x59cc86
cmp dword [esp + 0x70], edi
jne 0x59cad8
mov esi, dword [esp + 0xd4]
mov edi, dword [esp + 0xa0]
lea ecx, [esp + 0x170]
call fcn.0051b930
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.0051b930
lea ecx, [esp + 0x170]
push ecx
mov ecx, esi
mov byte [esp + 0x1cc], 9
call fcn.00583c90
lea edx, [esp + 0x194]
push edx
mov ecx, edi
call fcn.00583c90
lea ecx, [esp + 0x30]
call fcn.005f3af0
cmp dword [esp + 0x48], 0
mov ebx, closesocket
mov byte [esp + 0x1c8], 0xa
mov dword [esp + 0x14], ebx
jle 0x59c84e
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.005d4e60
mov esi, eax
push ebx
push esi
call fcn.00524d40
add esp, 0x14
test eax, eax
je 0x59c7f0
mov ecx, dword [esp + 0x30]
push ecx
lea ecx, [esp + 0x34]
call fcn.005effb0
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.005effb0
jmp 0x59c82f
cmp esi, ebx
jge 0x59c83c
push 0
lea ecx, [esp + 0x34]
call fcn.005effb0
push 0
lea ecx, [esp + 0x34]
mov dword [esp + 0x34], 0
call fcn.005effb0
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.005effb0
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 0x59c7a0
mov dword [esp + 0x14], ebx
lea ecx, [esp + 0x3c]
call fcn.005f3af0
lea eax, [esp + 0xa4]
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1cc], 0xb
mov edi, closesocket
call fcn.005eff10
mov eax, dword [esp + 0x1c]
xor ebx, ebx
mov byte [esp + 0x1c8], 0xc
cmp eax, ebx
je 0x59c941
lea ecx, [esp + 0x50]
push ecx
add eax, 0xffffffec
push eax
lea edx, [esp + 0x19c]
push edx
call fcn.005d4e60
mov esi, eax
push edi
push esi
call fcn.00524d40
add esp, 0x14
test eax, eax
je 0x59c8dc
mov eax, dword [esp + 0x3c]
push eax
lea ecx, [esp + 0x40]
call fcn.005effb0
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.005effb0
jmp 0x59c915
cmp esi, edi
jge 0x59c922
push ebx
lea ecx, [esp + 0x40]
call fcn.005effb0
push ebx
lea ecx, [esp + 0x40]
mov dword [esp + 0x40], ebx
call fcn.005effb0
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.005effb0
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 0x59c932
xor eax, eax
jmp 0x59c935
mov eax, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
cmp eax, ebx
jne 0x59c88b
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x30]
mov ebx, dword [esp + 0x3c]
push edi
push edx
call fcn.00524d40
add esp, 8
test eax, eax
je 0x59d0d1
cmp esi, ebx
jne 0x59d0d1
cmp esi, 2
jne 0x59cda4
cmp ebx, esi
jne 0x59cda4
cmp dword [esp + 0x30], 0
jle 0x59c985
mov eax, dword [esp + 0x38]
jmp 0x59c990
push 0
lea ecx, [esp + 0x34]
call fcn.005effb0
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 0x59c9b7
mov eax, dword [esp + 0x38]
add eax, 8
jmp 0x59c9c1
push esi
lea ecx, [esp + 0x34]
call fcn.005effb0
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 0x59c9e1
mov eax, dword [esp + 0x44]
jmp 0x59c9ec
push 0
lea ecx, [esp + 0x40]
call fcn.005effb0
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 0x59ca0e
mov eax, dword [esp + 0x44]
add eax, 8
jmp 0x59ca18
push esi
lea ecx, [esp + 0x40]
call fcn.005effb0
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.00598ea0
fld qword [esp + 0xc8]
mov eax, dword [esp + 0x6c]
fstp qword [esp + 0x138]
add esp, 0xc
push eax
lea ecx, [esp + 0x64]
call fcn.005f1530
fld qword [esp + 0x12c]
lea ecx, [esp + 0x18]
fstp qword [eax]
mov byte [esp + 0x1c8], 0xb
call fcn.004f2200
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1c8], 0xa
call fcn.005f3b00
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 9
call fcn.005f3b00
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.0051c420
lea ecx, [esp + 0x170]
mov byte [esp + 0x1c8], 7
call fcn.0051c420
mov ebx, dword [esp + 0x2c]
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x80]
call fcn.005eff10
cmp dword [esp + 0x80], 0
mov byte [esp + 0x1c8], 0x11
je 0x59cbbe
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 0x59cb46
mov ecx, dword [esp + 0x80]
test ecx, ecx
je 0x59cb38
add ecx, 0xffffffec
push ecx
mov ecx, eax
call fcn.00552800
mov esi, eax
jmp 0x59cb48
xor ecx, ecx
push ecx
mov ecx, eax
call fcn.00552800
mov esi, eax
jmp 0x59cb48
xor esi, esi
mov edx, dword [esi]
mov eax, dword [edx + 8]
push 0x686d70
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.00518080
lea ecx, [esp + 0x134]
mov byte [esp + 0x1c8], 0x11
call fcn.004f2200
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x7c]
add edi, 0x18
cmp eax, dword [ecx]
jne 0x59cbac
xor eax, eax
jmp 0x59cbaf
mov eax, dword [eax + 0xc]
mov dword [esp + 0x80], eax
test eax, eax
jne 0x59cb04
mov edx, dword [esp + 0x4c]
push 0x599990
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 0x59cc07
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.00599fb0
add esp, 8
test eax, eax
je 0x59cd5b
inc esi
add edi, 0x18
cmp esi, dword [esp + 0x48]
jl 0x59cbe6
cmp dword [esp + 0x60], 0
je 0x59cc34
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x59cc34
mov eax, dword [esp + 0x68]
mov edx, dword [ecx]
fld qword [eax]
push edx
fstp qword [esp + 0x128]
call fcn.005f1530
fld qword [esp + 0x124]
fstp qword [eax]
cmp dword [esp + 0x4c], 0
mov ebx, dword [esp + 0x2c]
jle 0x59cc5b
mov edi, dword [esp + 0x4c]
mov esi, ebx
mov ecx, dword [esi]
test ecx, ecx
je 0x59cc53
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
add esi, 0x18
sub edi, 1
jne 0x59cc45
push 0
lea ecx, [esp + 0x64]
call fcn.005f1530
lea ecx, [esp + 0x7c]
mov dword [esp + 0x60], 0
mov byte [esp + 0x1c8], 7
call fcn.004f2200
mov esi, dword [esp + 0x20]
or edi, 0xffffffff
cmp dword [esp + 0x24], 0
je 0x59c690
cmp dword [esp + 0x28], 0
je 0x59ccde
mov eax, dword [esp + 0x28]
mov edx, dword [eax - 4]
lea esi, [eax - 4]
push 0x599980
push edx
push 0x18
push eax
call fcn.005fba44
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
add esp, 4
test ebx, ebx
je 0x59ccda
mov eax, dword [ebx - 4]
push 0x599980
lea esi, [ebx - 4]
push eax
push 0x18
push ebx
call fcn.005fba44
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.005f3b00
lea ecx, [esp + 0x90]
mov byte [esp + 0x1c8], 1
call fcn.00544ad0
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], 0
call fcn.00544ad0
mov dword [esp + 0x1c8], edi
lea ecx, [esp + 0x84]
call fcn.005f3b00
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.005fb9ce
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x6c]
push edx
lea ecx, [esp + 0x94]
call fcn.00544790
push 0x11
lea ecx, [esp + 0x94]
call fcn.00543f40
cmp dword [esp + 0x24], 1
jne 0x59cc34
lea ecx, [esp + 0x90]
call fcn.00542310
jmp 0x59cc34
call fcn.005f1530
fldz
fstp qword [eax]
jmp 0x59cc91
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 0x59cdfe
mov edi, eax
lea ecx, [ecx]
lea eax, [ebx + ebx]
cmp eax, dword [esp + 0x30]
jge 0x59cde2
mov ecx, dword [esp + 0x38]
lea eax, [ecx + eax*8]
jmp 0x59cdec
push eax
lea ecx, [esp + 0x34]
call fcn.005effb0
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 0x59cdd0
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x170]
push ecx
push esi
push edx
call fcn.005610f0
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 0x59ce72
jmp 0x59ce40
lea eax, [ebx + ebx]
cmp eax, dword [esp + 0x3c]
jge 0x59ce52
mov ecx, dword [esp + 0x44]
lea eax, [ecx + eax*8]
jmp 0x59ce5c
push eax
lea ecx, [esp + 0x40]
call fcn.005effb0
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 0x59ce40
mov edi, dword [esp + 0x14]
lea ecx, [esp + 0x194]
push ecx
push esi
push edi
call fcn.005610f0
mov edx, dword [esp + 0x30]
add esp, 0xc
push esi
push edx
lea ecx, [esp + 0x14c]
call fcn.00541ce0
push esi
push edi
lea ecx, [esp + 0xf8]
mov byte [esp + 0x1d0], 0xd
call fcn.00541ce0
lea eax, [esp + 0xd8]
mov ecx, eax
mov byte [esp + 0x1c8], 0xe
mov dword [esp + 0x18], eax
call fcn.005efd20
mov dword [esp + 0x1c], eax
test eax, eax
je 0x59cf48
mov bl, 0xf
lea ecx, [esp + 0x144]
push ecx
push 0x24
call fcn.00543d50
add esp, 8
mov dword [esp + 0x6c], eax
mov byte [esp + 0x1c8], bl
test eax, eax
je 0x59cf16
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x59cf0a
add ecx, 0xffffffec
push ecx
mov ecx, eax
call fcn.005431e0
jmp 0x59cf18
xor ecx, ecx
push ecx
mov ecx, eax
call fcn.005431e0
jmp 0x59cf18
xor eax, eax
push eax
lea ecx, [esp + 0x148]
mov byte [esp + 0x1cc], 0xe
call fcn.00543e00
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
cmp eax, dword [edx]
jne 0x59cf3d
xor eax, eax
jmp 0x59cf40
mov eax, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x59ced4
lea eax, [esp + 0xa4]
mov ecx, eax
mov dword [esp + 0x18], eax
call fcn.005efd20
mov dword [esp + 0x1c], eax
test eax, eax
je 0x59cfe4
mov bl, 0x10
jmp 0x59cf70
lea ecx, [esp + 0xf0]
push ecx
push 0x24
call fcn.00543d50
add esp, 8
mov dword [esp + 0x6c], eax
mov byte [esp + 0x1c8], bl
test eax, eax
je 0x59cfb2
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x59cfa6
add ecx, 0xffffffec
push ecx
mov ecx, eax
call fcn.005431e0
jmp 0x59cfb4
xor ecx, ecx
push ecx
mov ecx, eax
call fcn.005431e0
jmp 0x59cfb4
xor eax, eax
push eax
lea ecx, [esp + 0xf4]
mov byte [esp + 0x1cc], 0xe
call fcn.00543e00
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
cmp eax, dword [edx]
jne 0x59cfd9
xor eax, eax
jmp 0x59cfdc
mov eax, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x59cf70
mov eax, dword [esp + 0x20]
push eax
lea ecx, [esp + 0xf4]
push ecx
lea edx, [esp + 0x14c]
push edx
call fcn.0059c340
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 0x59d038
mov ecx, dword [eax - 4]
lea edi, [eax - 4]
push 0x599980
push ecx
push 0x18
push eax
call fcn.005fba44
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.00544ad0
lea ecx, [esp + 0x144]
mov byte [esp + 0x1c8], 0xc
call fcn.00544ad0
lea ecx, [esp + 0x18]
mov byte [esp + 0x1c8], 0xb
call fcn.004f2200
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1c8], 0xa
call fcn.005f3b00
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 9
call fcn.005f3b00
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.0051c420
lea ecx, [esp + 0x170]
mov byte [esp + 0x1c8], 7
call fcn.0051c420
lea ecx, [esp + 0x60]
mov byte [esp + 0x1c8], 2
call fcn.005f3b00
jmp 0x59c4bb
mov eax, dword [esp + 0x28]
test eax, eax
je 0x59d11b
mov edx, dword [eax - 4]
lea esi, [eax - 4]
push 0x599980
push edx
push 0x18
push eax
call fcn.005fba44
push esi
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
mov eax, dword [esp + 0x30]
add esp, 4
test eax, eax
je 0x59d11b
mov ecx, dword [eax - 4]
lea esi, [eax - 4]
push 0x599980
push ecx
push 0x18
push eax
call fcn.005fba44
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.004f2200
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1c8], 0xa
call fcn.005f3b00
lea ecx, [esp + 0x30]
mov byte [esp + 0x1c8], 9
call fcn.005f3b00
lea ecx, [esp + 0x194]
mov byte [esp + 0x1c8], 8
call fcn.0051c420
lea ecx, [esp + 0x170]
mov byte [esp + 0x1c8], 7
call fcn.0051c420
lea ecx, [esp + 0x60]
mov byte [esp + 0x1c8], 2
call fcn.005f3b00
lea ecx, [esp + 0x90]
mov byte [esp + 0x1c8], 1
call fcn.00544ad0
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1c8], 0
call fcn.00544ad0
lea ecx, [esp + 0x84]
mov dword [esp + 0x1c8], 0xffffffff
call fcn.005f3b00
xor eax, eax
jmp 0x59cd37