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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xa8]
cmp eax, dword [ecx + 8]
jbe 0x57c430
sub esp, 0x128
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov eax, dword [esp + 0x130]
test eax, eax
je 0x57c417
call fcn.004b1900
lea edi, [esp + 0x114]
mov esi, esp
call fcn.0045778e
mov eax, dword [esp + 0x12c]
mov dword [esp], eax
mov ecx, dword [esp + 0x130]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x134]
mov dword [esp + 8], edx
lea edi, [esp + 0xc]
lea esi, [esp + 0x114]
call fcn.0045778e
call fcn.0057a0d0
lea esi, [esp + 0x20]
lea edi, [esp + 0xec]
call fcn.0045778e
lea edi, [esp + 0xd8]
lea esi, [esp + 0xec]
call fcn.0045778e
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xdc]
mov edx, ecx
shr ecx, 0x1f
shl ecx, 0x1f
test ecx, ecx
je 0x57c400
shl edx, 1
mov ecx, eax
shr eax, 0x1f
or eax, edx
mov edx, ecx
shl ecx, 1
shr ecx, 0x1f
mov ebx, eax
shl eax, 1
or eax, ecx
mov ecx, eax
add eax, 0xd7b17f80
shr ebx, 0x1f
add ecx, 0xd7b17f80
adc ebx, 0xd
test ebx, ebx
sete cl
test eax, eax
sete bl
and ebx, ecx
test bl, bl
je 0x57c3f9
test edx, 0x3fffffff
sete cl
test cl, cl
je 0x57c2c9
mov eax, dword [esp + 0x134]
mov ecx, dword [esp + 0x130]
mov edx, dword [esp + 0x12c]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x57c220
mov dword [esp + 0xbc], eax
mov dword [esp + 0x4c], ecx
mov edx, dword [ecx + 0x1c]
mov dword [esp], eax
lea ebx, [0x8f8200]
mov dword [esp + 4], ebx
lea ebp, [0xdd7ba0]
mov dword [esp + 8], ebp
call edx
mov eax, dword [esp + 0x10]
lea ecx, [0x8b5cc0]
cmp dword [esp + 0xc], ecx
jne 0x57c219
test eax, eax
jne 0x57c147
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0x12c]
mov ebx, dword [edx + 0x38]
test ebx, ebx
je 0x57c13c
mov ebp, dword [edx + 0x20]
mov esi, dword [edx + 0x1c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
lea eax, [0x98269c]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 4
mov ecx, dword [esp + 0x138]
mov dword [esp + 0x14], ecx
mov ebx, dword [esp + 0x13c]
mov dword [esp + 0x18], ebx
mov edi, dword [esp + 0x140]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x144]
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], ebp
call fcn.0057a8d0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x2c]
test ecx, ecx
je 0x57bdbf
mov dword [esp + 0xc8], eax
mov dword [esp + 0x60], ecx
lea eax, [0x93ec40]
mov dword [esp], eax
call fcn.0040ae10
mov edi, dword [esp + 4]
mov dword [edi + 4], 4
mov eax, dword [0xdd7ec0]
test eax, eax
jne 0x57bdaf
lea ecx, [0x98269c]
mov dword [edi], ecx
mov ecx, dword [esp + 0x13c]
mov dword [edi + 0xc], ecx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x57bd93
mov ecx, dword [esp + 0x138]
mov dword [edi + 8], ecx
mov dword [edi + 0x10], 0
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x57bd7c
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x57bd68
mov dword [edi + 0x1c], 0
mov ecx, dword [esp + 0x60]
mov dword [edi + 0x20], ecx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x57bd4f
mov eax, dword [esp + 0xc8]
mov dword [edi + 0x24], eax
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
lea eax, [0xa4e000]
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], edi
nop
call fcn.0042cca0
add esp, 0x128
ret
lea ecx, [edi + 0x24]
mov eax, edi
mov edi, ecx
mov edx, eax
mov eax, dword [esp + 0xc8]
call fcn.00456fe0
mov edi, edx
jmp 0x57bd18
lea ecx, [edi + 0x1c]
mov eax, edi
mov edi, ecx
mov edx, eax
xor eax, eax
call fcn.00456fe0
mov edi, edx
jmp 0x57bcfd
lea ecx, [edi + 0x14]
mov eax, edi
mov edi, ecx
mov edx, eax
xor eax, eax
call fcn.00456fe0
mov edi, edx
jmp 0x57bce5
lea ecx, [edi + 8]
mov eax, edi
mov edi, ecx
mov edx, eax
mov eax, dword [esp + 0x138]
call fcn.00456fe0
mov edi, edx
jmp 0x57bcc9
lea eax, [0x98269c]
call fcn.00456fe0
jmp 0x57bca7
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0xc0], ebp
lea eax, [0x92cbe0]
mov dword [esp], eax
call fcn.0040ae10
mov eax, dword [0xdd7ec0]
mov edi, dword [esp + 4]
mov dword [esp + 0xb8], edi
test eax, eax
jne 0x57c11a
mov esi, dword [esp + 0x12c]
call fcn.00457716
mov ecx, dword [esp + 0x13c]
mov edx, dword [esp + 0xb8]
mov dword [edx + 0x48], ecx
mov ebx, dword [0xdd7ec0]
test ebx, ebx
jne 0x57c104
mov ebx, dword [esp + 0x138]
mov dword [edx + 0x44], ebx
mov ebp, dword [esp + 0x144]
mov dword [edx + 0x50], ebp
mov ebp, dword [0xdd7ec0]
test ebp, ebp
jne 0x57c0f0
mov eax, dword [esp + 0x140]
mov dword [edx + 0x4c], eax
mov eax, dword [esp + 0x12c]
mov ebp, dword [eax + 0x2c]
test ebp, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg esi, ebx
setg bl
xchg esi, ebx
mov edi, dword [eax + 0x28]
test edi, edi
xchg edi, ebx
setae bl
xchg edi, ebx
and edi, ebp
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x57be9f
cmp ecx, 3
jne 0x57c0e9
cmp word [ebx], 0x6374
jne 0x57c0e9
cmp byte [ebx + 2], 0x70
sete cl
test cl, cl
jne 0x57c091
xor ecx, ecx
xor ebx, ebx
xor ebp, ebp
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0xc0]
test ebx, ebx
jle 0x57c051
mov dword [esp], edx
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebp
call fcn.0057c440
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x30]
test eax, eax
jne 0x57c020
lea eax, [0xa57c60]
cmp eax, edx
jne 0x57c014
mov eax, ecx
jne 0x57bf49
mov ebx, dword [esp + 0x12c]
mov ebp, dword [ebx + 0x34]
test ebp, ebp
xchg ebp, ebx
setg bl
xchg ebp, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
mov edi, dword [ebx + 0x30]
test edi, edi
xchg edi, ebx
setae bl
xchg edi, ebx
and edi, esi
or ebp, edi
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x57bf7a
mov dword [esp + 0x148], edx
mov dword [esp + 0x14c], eax
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
nop
call fcn.0042cca0
add esp, 0x128
ret
mov dword [esp + 0x64], edx
mov dword [esp + 0xac], ecx
mov dword [esp + 0xd4], eax
mov eax, dword [ecx]
mov dword [esp], eax
mov byte [esp + 4], 1
call fcn.00594b50
mov eax, dword [esp + 0x12c]
mov ecx, dword [eax + 0x34]
test ecx, ecx
sete dl
mov eax, dword [eax + 0x30]
test eax, eax
sete bl
and ebx, edx
test bl, bl
je 0x57c00c
mov eax, 3
mov ecx, 0x7e11d600
mov dword [esp + 0x5c], eax
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0xac]
mov edx, dword [edx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00597d90
mov edx, dword [0xdb9370]
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [edx]
call eax
mov eax, dword [esp + 0xd4]
mov edx, dword [esp + 0x64]
jmp 0x57bf49
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x57bfc2
mov eax, ecx
mov ecx, 0
jmp 0x57bf17
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ebx
nop
call fcn.0042cca0
add esp, 0x128
ret
mov dword [esp], edx
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
call fcn.0057ca60
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
jmp 0x57beff
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 8], eax
lea eax, [0x9b2708]
mov dword [esp + 0xc], eax
call fcn.00588100
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0xb8]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x12c]
jmp 0x57beb0
xor ecx, ecx
jmp 0x57be97
lea edi, [edx + 0x4c]
mov eax, dword [esp + 0x140]
call fcn.00456fe0
jmp 0x57be4c
lea edi, [edx + 0x44]
mov eax, dword [esp + 0x138]
call fcn.00456fe0
mov ebx, eax
jmp 0x57be2a
lea eax, [0x9594c0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov eax, dword [esp + 0x12c]
mov dword [esp + 8], eax
call fcn.00410ec0
jmp 0x57be01
mov ebx, dword [0xdb935c]
jmp 0x57bbf5
mov dword [esp + 0xa8], eax
lea eax, [0x935c00]
mov dword [esp], eax
call fcn.0040ae10
mov edi, dword [esp + 4]
mov eax, dword [0xdd7ec0]
mov ecx, dword [esp + 0xa8]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
test eax, eax
jne 0x57c1fb
mov dword [edi], ecx
mov dword [edi + 4], edx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x57c1dd
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
lea edx, [0x8f8200]
mov dword [esp + 8], edx
lea edx, [0xdd7ba0]
mov dword [esp + 0xc], edx
lea edx, [0x8b5cc0]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edi
call fcn.00576d60
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
jmp 0x57bbe3
lea ecx, [edi + 8]
mov eax, edi
mov edi, ecx
mov edx, eax
xor eax, eax
call fcn.00456fe0
lea edi, [edx + 0xc]
xor eax, eax
call fcn.00456fe0
mov edi, edx
jmp 0x57c197
mov eax, ecx
call fcn.00456fe0
lea ecx, [edi + 4]
mov eax, edi
mov edi, ecx
mov ebx, eax
mov eax, edx
call fcn.00456fe0
mov edi, ebx
jmp 0x57c17f
xor eax, eax
jmp 0x57bbd0
mov dword [esp + 0xc4], ebx
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00575e00
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xb0], ecx
mov edx, dword [esp + 8]
mov dword [esp + 0x44], edx
mov dword [esp + 0x68], 0
mov dword [esp + 0x78], eax
lea ebx, [esp + 0x68]
mov dword [esp], ebx
call fcn.0042c560
test eax, eax
jne 0x57c2bc
mov dword [esp], 0x10
lea eax, [0x9b26d4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0x14], ecx
call fcn.00435810
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0x44]
jmp 0x57bb95
nop
call fcn.0042cca0
add esp, 0x128
ret
lea edi, [esp + 0x114]
xor eax, eax
call fcn.004572ab
mov ecx, dword [esp + 0x130]
mov edx, dword [ecx + 0x10]
mov ebx, dword [esp + 0x134]
mov dword [esp], ebx
call edx
lea esi, [esp + 4]
mov dword [esp + 0xd0], esi
lea edi, [esp + 0x114]
call fcn.0045778e
movzx ecx, byte [esp + 0x18]
mov byte [esp + 0x43], cl
lea edi, [esp + 0x100]
mov esi, dword [esp + 0xd0]
call fcn.0045778e
movzx ecx, byte [esp + 0x43]
test cl, cl
jne 0x57c3cc
mov eax, 1
test al, al
jne 0x57c349
mov eax, dword [esp + 0x134]
mov ecx, dword [esp + 0x130]
jmp 0x57bb83
mov eax, dword [esp + 0x130]
mov dword [esp], eax
mov eax, dword [esp + 0x134]
mov dword [esp + 4], eax
lea edi, [esp + 8]
lea esi, [esp + 0xec]
call fcn.0045778e
call fcn.00576640
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xb4], ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x48], edx
mov dword [esp + 0x88], 0
mov dword [esp + 0x98], eax
lea eax, [esp + 0x88]
mov dword [esp], eax
call fcn.0042c560
test eax, eax
jne 0x57c3bf
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0x48]
jmp 0x57bb83
nop
call fcn.0042cca0
add esp, 0x128
ret
mov edi, esp
lea esi, [esp + 0xec]
call fcn.0045778e
lea edi, [esp + 0x14]
lea esi, [esp + 0x100]
call fcn.0045778e
call fcn.004af110
movzx eax, byte [esp + 0x28]
jmp 0x57c332
xor ecx, ecx
jmp 0x57bb6d
mov ebx, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe0]
mov edx, eax
mov eax, ecx
jmp 0x57bb50
lea eax, [0x8eba40]
mov dword [esp], eax
lea eax, [0xa45618]
mov dword [esp + 4], eax
call fcn.0042cff0
nop
call fcn.004557a0
jmp fcn.0057ba40