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

Disassembly:
mov ecx, dword [0xe11d80]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xa8]
cmp eax, dword [ecx + 8]
jbe 0x595c75
sub esp, 0x128
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
mov dword [esp + 0x15c], 0
mov eax, dword [esp + 0x148]
test eax, eax
je 0x595923
lea eax, [0x8cd100]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00404e50
mov eax, dword [esp + 8]
mov dword [esp + 0x9c], eax
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
lea ecx, [0x595eb0]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xc4], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x84], ecx
lea ecx, [esp + 0x78]
mov dword [esp], ecx
call fcn.00437bf0
test eax, eax
jne 0x595917
lea eax, [0x8cdd80]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00404e50
mov eax, dword [esp + 8]
mov dword [esp + 0xa0], eax
lea ecx, [0x91f480]
mov dword [esp], ecx
call fcn.0040c320
mov eax, dword [esp + 4]
lea ecx, [0x595d60]
mov dword [eax], ecx
mov ecx, dword [esp + 0x13c]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x140]
mov dword [eax + 0xc], ecx
mov ecx, dword [0xe12160]
test ecx, ecx
jne 0x59570b
mov ecx, dword [esp + 0x138]
jmp 0x595719
call fcn.00469680
mov ecx, dword [esp + 0x138]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x148]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x14c]
mov dword [eax + 0x18], ecx
mov ecx, dword [0xe12160]
test ecx, ecx
jne 0x595758
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x12c]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x9c]
jmp 0x595784
call fcn.004696b0
mov ecx, dword [esp + 0x144]
mov dword [edi], ecx
mov edx, dword [esp + 0x12c]
mov dword [edi + 4], edx
mov ebx, dword [esp + 0xa0]
mov dword [edi + 8], ebx
mov ebp, dword [esp + 0x9c]
mov dword [edi + 0xc], ebp
mov dword [esp + 0xb4], eax
mov dword [eax + 0x10], ecx
mov dword [eax + 0x1c], edx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], ebp
lea edi, [esp + 0xec]
xor eax, eax
call fcn.0046992b
lea edi, [esp + 0x100]
call fcn.0046992b
mov ecx, dword [esp + 0x130]
mov dword [esp], ecx
mov ebp, dword [esp + 0x134]
mov dword [esp + 4], ebp
call fcn.00589b00
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov dword [esp + 0xa4], edx
mov ebx, dword [esp + 8]
mov dword [esp + 0xb0], ebx
mov dword [esp + 0x60], ecx
lea ecx, [esp + 0x54]
mov dword [esp], ecx
call fcn.00437bf0
test eax, eax
jne 0x59590b
lea eax, [0x8fda40]
mov dword [esp], eax
call fcn.0040c320
mov eax, dword [esp + 4]
lea ecx, [0x595d10]
mov dword [eax], ecx
mov ecx, dword [0xe12160]
test ecx, ecx
jne 0x59582a
mov ecx, dword [esp + 0xb4]
jmp 0x595838
call fcn.00469680
mov ecx, dword [esp + 0xb4]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov edx, dword [esp + 0xb0]
mov dword [eax + 8], edx
mov edx, dword [0xe12160]
test edx, edx
jne 0x595858
mov edx, dword [esp + 0xa4]
jmp 0x595866
call fcn.00469680
mov edx, dword [esp + 0xa4]
mov dword [edi], edx
mov dword [eax + 0xc], edx
mov dword [esp], eax
call fcn.00444a10
mov eax, dword [esp + 0x12c]
mov ecx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
test eax, eax
sete dl
setg bl
test ecx, ecx
xchg ebp, ebx
seta bl
xchg ebp, ebx
and edx, ebp
or ebx, edx
test bl, bl
jne 0x59589e
xor eax, eax
mov ecx, 0x11e1a300
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0051dd50
mov eax, dword [esp + 8]
mov dword [esp + 0xa8], eax
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
lea ecx, [0x595cd0]
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], eax
lea ecx, [esp + 0xb8]
mov dword [esp + 0x3c], ecx
lea ecx, [esp + 0x30]
mov dword [esp], ecx
call fcn.00437bf0
test eax, eax
jne 0x5958ff
jmp 0x5959a1
call fcn.00438180
add esp, 0x128
ret
call fcn.00438180
add esp, 0x128
ret
call fcn.00438180
add esp, 0x128
ret
mov eax, dword [esp + 0x12c]
mov dword [esp], eax
mov eax, dword [esp + 0x130]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x134]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x138]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x140]
mov dword [esp + 0x14], eax
call fcn.00595ef0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x150], ecx
mov dword [esp + 0x154], edx
mov dword [esp + 0x158], eax
mov dword [esp + 0x15c], ebx
call fcn.00438180
add esp, 0x128
ret
mov ecx, dword [esp + 0xa8]
mov edx, dword [ecx]
lea edi, [esp + 0x114]
xor eax, eax
call fcn.0046992b
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd0], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0xc8], ecx
lea edx, [esp + 0x114]
mov dword [esp + 0xcc], edx
lea edx, [esp + 0xc8]
mov dword [esp], edx
lea edx, [esp + 0x28]
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
mov byte [esp + 0x14], 1
call fcn.0044b240
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x595b17
lea edi, [esp + 0xd8]
lea esi, [esp + 0x114]
call fcn.00469e0e
mov ecx, dword [esp + 0xe0]
test ecx, ecx
je 0x595c12
movzx ecx, byte [esp + 0xe8]
test cl, cl
je 0x595a8a
lea edi, [esp + 0xec]
lea esi, [esp + 0x114]
call fcn.00469e0e
jmp 0x595a9d
lea edi, [esp + 0x100]
lea esi, [esp + 0x114]
call fcn.00469e0e
movzx ecx, byte [esp + 0xfd]
test cl, cl
je 0x595ab9
movzx ecx, byte [esp + 0x111]
test cl, cl
jne 0x595bd4
movzx ecx, byte [esp + 0xe8]
test cl, cl
je 0x5959a1
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x595c5c
lea ecx, [eax + 4]
mov dword [esp], ecx
call fcn.00467ad0
movzx eax, byte [esp + 4]
test al, al
je 0x5959a1
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.0051de40
jmp 0x5959a1
mov eax, dword [esp + 0x130]
mov dword [esp], eax
mov ecx, dword [esp + 0x134]
mov dword [esp + 4], ecx
call fcn.00589b00
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xac], ecx
mov edx, dword [esp + 8]
mov dword [esp + 0xb0], edx
mov dword [esp], eax
call fcn.00437b10
test eax, eax
jne 0x595c50
lea eax, [0x8fdaa0]
mov dword [esp], eax
call fcn.0040c320
mov eax, dword [esp + 4]
lea ecx, [0x595c80]
mov dword [eax], ecx
mov edx, dword [0xe12160]
test edx, edx
jne 0x595b88
mov edx, dword [esp + 0xb4]
jmp 0x595b96
call fcn.00469680
mov edx, dword [esp + 0xb4]
mov dword [edi], edx
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xb0]
mov dword [eax + 8], ebx
mov ebx, dword [0xe12160]
test ebx, ebx
jne 0x595bb6
mov ebx, dword [esp + 0xac]
jmp 0x595bc4
call fcn.00469680
mov ebx, dword [esp + 0xac]
mov dword [edi], ebx
mov dword [eax + 0xc], ebx
mov dword [esp], eax
call fcn.00444a10
jmp 0x5959a1
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], eax
mov dword [esp + 0x15c], ecx
call fcn.00438180
add esp, 0x128
ret
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ecx
mov dword [esp + 0x158], 0
mov dword [esp + 0x15c], 0
call fcn.00438180
add esp, 0x128
ret
call fcn.00438180
add esp, 0x128
ret
lea eax, [0x8d9c60]
mov dword [esp], eax
lea eax, [0xa2c8b0]
mov dword [esp + 4], eax
call fcn.00438c00
nop
call fcn.00468280
jmp fcn.005955e0