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

Disassembly:
push 0xffffffffffffffff
push 0x627c24
mov eax, dword fs:[0]
push eax
sub esp, 0x27c
mov eax, dword [0x67dc50]
xor eax, esp
mov dword [esp + 0x278], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x67dc50]
xor eax, esp
push eax
lea eax, [esp + 0x290]
mov dword fs:[0], eax
mov esi, dword [esp + 0x2a0]
mov ebx, dword [esp + 0x2a4]
xor edi, edi
mov dword [esp + 0x14], edi
mov eax, dword [ecx]
mov edx, dword [esi]
mov ebp, dword [eax + 0xa4]
mov eax, dword [edx + 0x5c]
mov ecx, esi
dec ebx
call eax
dec eax
cmp eax, 0x30
ja case.0x5c3a92.9
movzx ecx, byte [eax + 0x5c40d4]
jmp dword [ecx*4 + 0x5c4084]
push ebx
push esi
mov ecx, ebp
call fcn.005e5da0
mov edi, eax
jmp case.0x5c3a92.9
push ebx
push esi
mov ecx, ebp
call fcn.005e5e90
mov edi, eax
jmp case.0x5c3a92.9
push ebx
push esi
mov ecx, ebp
call fcn.005e6860
mov edi, eax
jmp case.0x5c3a92.9
push ebx
push esi
mov ecx, ebp
call fcn.005e5f50
mov edi, eax
jmp case.0x5c3a92.9
mov eax, dword [esi + 0xc]
add eax, ebx
push eax
add esi, 4
push esi
mov ecx, ebp
call fcn.005e6300
mov edi, eax
jmp case.0x5c3a92.9
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x28]
je 0x5c3b9b
push fcn.004ed1b0
push fcn.005eb500
push 0x12
push 0x10
lea edx, [esp + 0x158]
push edx
call fcn.005f6257
lea eax, [esp + 0x148]
push eax
mov ecx, esi
mov dword [esp + 0x29c], 0
call fcn.00574c20
push eax
lea ecx, [esp + 0x14c]
push ecx
lea ecx, [esp + 0x270]
call fcn.0054d880
push ebx
lea edx, [esp + 0x26c]
push edx
mov ecx, ebp
mov byte [esp + 0x2a0], 1
call fcn.005e5f50
lea ecx, [esp + 0x268]
mov edi, eax
mov byte [esp + 0x298], 0
call fcn.00553750
push fcn.004ed1b0
push 0x12
push 0x10
lea eax, [esp + 0x154]
push eax
mov dword [esp + 0x2a8], 0xffffffff
call fcn.005f61f4
jmp case.0x5c3a92.9
cdq
sub eax, edx
sar eax, 1
add eax, ebx
push eax
push esi
mov ecx, ebp
call fcn.005e5e90
mov edi, eax
jmp case.0x5c3a92.9
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
add eax, ebx
push eax
push esi
mov ecx, ebp
call fcn.005e5da0
mov edi, eax
jmp case.0x5c3a92.9
lea ecx, [esp + 0x268]
call fcn.0051f510
lea ecx, [esp + 0x268]
push ecx
mov ecx, esi
mov dword [esp + 0x29c], 2
call fcn.00520100
mov eax, dword [esp + 0x27c]
cdq
sub eax, edx
sar eax, 1
add eax, ebx
push eax
lea edx, [esp + 0x26c]
push edx
mov ecx, ebp
call fcn.005e5da0
lea ecx, [esp + 0x268]
mov edi, eax
mov dword [esp + 0x298], 0xffffffff
call fcn.0051f5b0
jmp case.0x5c3a92.9
push fcn.005eece0
push 5
push 8
lea eax, [esp + 0x28]
push eax
call fcn.00430f20
lea ecx, [esp + 0x1c]
push ecx
mov ecx, esi
call fcn.00522310
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x24], eax
push 4
lea eax, [esp + 0x20]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x2c], ecx
push eax
lea ecx, [esp + 0x270]
mov dword [esp + 0x38], edx
call fcn.0054d7a0
push ebx
lea ecx, [esp + 0x26c]
push ecx
mov ecx, ebp
mov dword [esp + 0x2a0], 3
call fcn.005e5f50
lea ecx, [esp + 0x268]
mov edi, eax
mov dword [esp + 0x298], 0xffffffff
call fcn.00553750
jmp case.0x5c3a92.9
lea ecx, [esp + 0x1c]
call fcn.0053d2b0
lea edx, [esp + 0x1c]
push edx
mov ecx, esi
mov dword [esp + 0x29c], 4
call fcn.00581c50
jmp 0x5c3de7
mov ecx, esi
call fcn.00582fa0
mov esi, eax
test esi, esi
je case.0x5c3a92.9
push ebx
push esi
mov ecx, ebp
call fcn.005e5f50
mov edx, dword [esi]
mov edi, eax
mov eax, dword [edx]
push 1
mov ecx, esi
call eax
jmp case.0x5c3a92.9
push ebx
push esi
mov ecx, ebp
call fcn.005e6770
mov edi, eax
jmp case.0x5c3a92.9
push ebx
lea ecx, [esp + 0x70]
push ecx
mov ecx, esi
call fcn.0051f160
push eax
mov ecx, ebp
call fcn.005e6300
mov edi, eax
jmp case.0x5c3a92.9
push esi
lea ecx, [esp + 0x20]
call fcn.0053d4e0
lea edx, [esp + 0x1c]
push edx
push 0x24
mov dword [esp + 0x2a0], 5
call fcn.0053f350
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
mov byte [esp + 0x298], 6
test edi, edi
je 0x5c3dc0
mov eax, dword [esi + 0xc]
push eax
add esi, 4
push esi
lea ecx, [esp + 0x64]
call fcn.005165c0
push eax
mov ecx, edi
mov byte [esp + 0x29c], 7
mov dword [esp + 0x18], 1
call fcn.0053e570
mov esi, eax
jmp 0x5c3dc2
xor esi, esi
test byte [esp + 0x14], 1
mov dword [esp + 0x298], 5
je 0x5c3ddd
lea ecx, [esp + 0x5c]
call fcn.005166b0
push esi
lea ecx, [esp + 0x20]
call fcn.0053f400
push ebx
lea eax, [esp + 0x20]
push eax
mov ecx, ebp
call fcn.005e6770
lea ecx, [esp + 0x1c]
mov edi, eax
mov dword [esp + 0x298], 0xffffffff
call fcn.005400d0
jmp case.0x5c3a92.9
lea ecx, [esp + 0x268]
call fcn.00525bc0
lea ecx, [esp + 0x268]
push ecx
mov ecx, esi
mov dword [esp + 0x29c], 9
call fcn.005146d0
test eax, eax
je 0x5c3e72
lea edx, [esp + 0x268]
push edx
lea ecx, [esp + 0x4c]
call fcn.0054da10
push ebx
lea eax, [esp + 0x4c]
push eax
mov ecx, ebp
mov byte [esp + 0x2a0], 0xa
call fcn.005e5f50
lea ecx, [esp + 0x48]
mov edi, eax
mov byte [esp + 0x298], 9
call fcn.00553750
lea ecx, [esp + 0x268]
mov dword [esp + 0x298], 0xffffffff
call fcn.00526510
jmp case.0x5c3a92.9
push esi
lea ecx, [esp + 0x78]
call fcn.0054db00
push ebx
push eax
mov ecx, ebp
mov dword [esp + 0x2a0], 0xb
call fcn.005e5f50
lea ecx, [esp + 0x74]
mov edi, eax
mov dword [esp + 0x298], 0xffffffff
call fcn.00553750
jmp case.0x5c3a92.9
lea ecx, [esp + 0x268]
call fcn.00517e90
lea ecx, [esp + 0x268]
push ecx
mov ecx, esi
mov dword [esp + 0x29c], 0xc
call fcn.005c5dc0
mov eax, dword [esi + 0x20]
cdq
sub eax, edx
sar eax, 1
add eax, ebx
push eax
lea edx, [esp + 0x26c]
push edx
mov ecx, ebp
call fcn.005e5e90
lea ecx, [esp + 0x268]
mov edi, eax
mov dword [esp + 0x298], 0xffffffff
call fcn.00518980
jmp case.0x5c3a92.9
push fcn.004ed1b0
push fcn.005eb500
push 0xc
push 0x10
lea eax, [esp + 0x98]
push eax
call fcn.005f6257
lea ecx, [esp + 0x88]
push ecx
mov ecx, esi
mov dword [esp + 0x29c], 0xd
call fcn.005ca9a0
push 0xc
lea edx, [esp + 0x8c]
push edx
lea ecx, [esp + 0x50]
call fcn.0054d880
push ebx
lea eax, [esp + 0x4c]
push eax
mov ecx, ebp
mov byte [esp + 0x2a0], 0xe
call fcn.005e5f50
lea ecx, [esp + 0x48]
mov edi, eax
mov byte [esp + 0x298], 0xd
call fcn.00553750
push fcn.004ed1b0
push 0xc
push 0x10
lea ecx, [esp + 0x94]
push ecx
mov dword [esp + 0x2a8], 0xffffffff
call fcn.005f61f4
jmp case.0x5c3a92.9
movzx eax, word [esi + 0x16]
cwde
xor ecx, ecx
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call sub.MSVCR90.dll_void____cdecl_operator_new___unsigned_int_
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je case.0x5c3a92.9
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0x74]
mov ecx, esi
call eax
xor ecx, ecx
xor edx, edx
cmp dx, word [esi + 0x16]
mov dword [esp + 0x18], ecx
jge 0x5c4024
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x5c4017
push ebx
push eax
mov ecx, ebp
call fcn.005e5f50
mov edi, eax
test edi, edi
jne 0x5c4024
mov ecx, dword [esp + 0x18]
movsx edx, word [esi + 0x16]
inc ecx
cmp ecx, edx
mov dword [esp + 0x18], ecx
jl 0x5c3ff9
xor eax, eax
xor ebx, ebx
cmp ax, word [esi + 0x16]
jge 0x5c404a
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + ebx*4]
test ecx, ecx
je 0x5c4041
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
movsx ecx, word [esi + 0x16]
inc ebx
cmp ebx, ecx
jl 0x5c402e
mov edx, dword [esp + 0x14]
push edx
call sub.MSVCR90.dll_void___cdecl_operator_delete___void__
add esp, 4
mov eax, edi
mov ecx, dword [esp + 0x290]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x278]
xor ecx, esp
call fcn.005f617e
add esp, 0x288
ret 8