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

Disassembly:
mov ecx, dword [0x817cc4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x57caa1
sub esp, 0x64
mov eax, dword [esp + 0x84]
test eax, eax
je 0x57c34b
nop
lea eax, [0x5b7be0]
mov dword [esp], eax
call fcn.0040bd60
mov eax, dword [0x817f20]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x57c139
mov ebx, dword [esp + 0x68]
jmp 0x57c144
call fcn.00466d10
mov ebx, dword [esp + 0x68]
mov dword [edi], ebx
mov dword [esp + 0x58], ecx
mov dword [ecx], ebx
mov ebp, dword [esp + 0x7c]
test ebp, ebp
jne 0x57c18a
mov esi, dword [esp + 0x74]
test esi, esi
jne 0x57c160
xor eax, eax
xor edx, edx
jmp 0x57c1b1
mov eax, dword [esi + 0x14]
mov ecx, dword [esp + 0x78]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x74]
mov edx, eax
mov eax, ecx
mov ecx, dword [esp + 0x58]
jmp 0x57c1b1
mov eax, dword [ebp + 0x14]
mov ecx, dword [esp + 0x80]
mov dword [esp], ecx
call eax
mov edx, dword [esp + 4]
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x74]
mov dword [esp + 0x30], eax
mov dword [esp + 0x50], edx
mov edi, dword [ebx + 0x144]
mov ebp, dword [ebx + 0x140]
cmp edi, 4
jne 0x57c1d5
cmp dword [ebp], 0x78696e75
je 0x57c22a
jmp 0x57c24f
cmp edi, 8
jne 0x57c1ee
cmp dword [ebp], 0x78696e75
jne 0x57c24f
cmp dword [ebp + 4], 0x6d617267
je 0x57c22a
jmp 0x57c24f
cmp edi, 0xa
jne 0x57c24f
mov dword [esp], ebp
lea eax, [0x5d8991]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
call fcn.00403080
movzx eax, byte [esp + 0xc]
test al, al
je 0x57c23b
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x68]
mov esi, dword [esp + 0x74]
mov ebp, dword [ebx + 0x140]
mov edi, dword [ebx + 0x144]
jmp 0x57c300
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x68]
mov esi, dword [esp + 0x74]
mov ebp, dword [ebx + 0x144]
lea edi, [ebp - 1]
cmp ebp, edi
jbe 0x57ca97
mov edi, dword [ebx + 0x140]
movzx esi, byte [ebp + edi - 1]
xchg esi, eax
cmp al, 0x34
xchg esi, eax
je 0x57c279
xchg esi, eax
cmp al, 0x36
xchg esi, eax
jne 0x57c281
mov esi, edi
mov edi, ebp
mov ebp, esi
jmp 0x57c300
cmp dword [ebx + 0x134], 2
jne 0x57c2c6
mov dword [esp], 0
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
lea eax, [0x6ddeb4]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.00450d70
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x50]
jmp 0x57c300
mov dword [esp], 0
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
lea eax, [0x6dded4]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.00450d70
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x84]
mov esi, dword [ebx]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
lea eax, [0x6dfca4]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x84]
call esi
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x57ca7d
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x57c359
xor eax, eax
xor ecx, ecx
jmp 0x57c3c2
mov eax, dword [eax + 0x20]
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx + 0x134]
mov ebx, dword [esp + 0x78]
mov dword [esp], ebx
mov dword [esp + 4], edx
call eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x57ca63
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
test eax, eax
je 0x57c3c2
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 8]
mov edx, dword [esp + 0x68]
mov ebx, dword [edx + 0x10]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004895b0
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x57c9f5
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x7c]
test edx, edx
je 0x57c488
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x2c], eax
mov eax, dword [edx + 0x20]
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx + 0x134]
mov ebx, dword [esp + 0x80]
mov dword [esp], ebx
mov dword [esp + 4], edx
call eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x57c46e
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x68]
mov dword [esp], edx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
call fcn.0056ebf0
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x57c454
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x68]
mov byte [edx + 0x13c], 1
jmp 0x57c4a8
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x64
ret
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x64
ret
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call fcn.0056eae0
mov eax, dword [esp + 4]
test eax, eax
jne 0x57c9db
mov edx, dword [esp + 0x68]
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x54], ecx
mov ebx, dword [edx + 0x10]
mov dword [esp], ebx
call fcn.00489690
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x34]
test edx, edx
je 0x57c685
mov ebx, dword [esp + 0x68]
mov ebp, dword [ebx + 0x134]
cmp ebp, 1
jne 0x57c50b
mov ebp, dword [ebx + 0x138]
cmp ebp, 1
jne 0x57c4f1
lea ebp, [0x6abd90]
jmp 0x57c548
cmp ebp, 2
jne 0x57c4fe
lea ebp, [0x6abd94]
jmp 0x57c548
cmp ebp, 5
jne 0x57c542
lea ebp, [0x6abd98]
jmp 0x57c548
cmp ebp, 2
je 0x57c515
cmp ebp, 0x17
jne 0x57c542
mov ebp, dword [ebx + 0x138]
cmp ebp, 1
jne 0x57c528
lea ebp, [0x6abd88]
jmp 0x57c548
cmp ebp, 2
jne 0x57c535
lea ebp, [0x6abd8c]
jmp 0x57c548
cmp ebp, 3
jne 0x57c542
lea ebp, [0x6abd84]
jmp 0x57c548
lea ebp, [0x6abd44]
mov ebx, dword [ebp]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov edx, ebp
call ebx
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0x134]
cmp ecx, 1
jne 0x57c592
mov ecx, dword [eax + 0x138]
cmp ecx, 1
jne 0x57c578
lea ecx, [0x6abd90]
jmp 0x57c5cf
cmp ecx, 2
jne 0x57c585
lea ecx, [0x6abd94]
jmp 0x57c5cf
cmp ecx, 5
jne 0x57c5c9
lea ecx, [0x6abd98]
jmp 0x57c5cf
cmp ecx, 2
je 0x57c59c
cmp ecx, 0x17
jne 0x57c5c9
mov ecx, dword [eax + 0x138]
cmp ecx, 1
jne 0x57c5af
lea ecx, [0x6abd88]
jmp 0x57c5cf
cmp ecx, 2
jne 0x57c5bc
lea ecx, [0x6abd8c]
jmp 0x57c5cf
cmp ecx, 3
jne 0x57c5c9
lea ecx, [0x6abd84]
jmp 0x57c5cf
lea ecx, [0x6abd48]
mov eax, dword [ecx]
mov ebx, dword [esp + 8]
mov dword [esp + 0x60], ebx
mov ebp, dword [esp + 0xc]
mov dword [esp + 0x48], ebp
mov esi, dword [esp + 0x34]
mov dword [esp], esi
mov esi, dword [esp + 0x54]
mov dword [esp + 4], esi
mov edx, ecx
call eax
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x68]
mov dword [ebp + 0x148], ebx
mov ebx, dword [0x817f20]
test ebx, ebx
jne 0x57c61a
mov edx, dword [esp + 0x48]
jmp 0x57c62e
call fcn.00466d20
mov edx, dword [esp + 0x48]
mov dword [edi], edx
mov ebx, dword [ebp + 0x14c]
mov dword [edi + 4], ebx
mov dword [ebp + 0x14c], edx
mov dword [ebp + 0x150], ecx
mov ecx, dword [0x817f20]
test ecx, ecx
je 0x57c654
call fcn.00466d20
mov dword [edi], eax
mov ecx, dword [ebp + 0x154]
mov dword [edi + 4], ecx
mov dword [ebp + 0x154], eax
lea eax, [0x5d1880]
mov dword [esp], eax
mov dword [esp + 4], ebp
lea eax, [0x5af700]
mov dword [esp + 8], eax
lea eax, [0x6abd40]
mov dword [esp + 0xc], eax
call fcn.00416b30
jmp 0x57c9c1
mov dword [esp + 0x60], eax
mov dword [esp + 0x3c], ecx
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0x10]
mov dword [esp], ecx
call fcn.00489770
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test eax, eax
je 0x57c875
mov dword [esp + 0x38], edx
mov dword [esp + 0x5c], ecx
mov eax, dword [esp + 0x68]
mov ebx, dword [eax + 0x134]
cmp ebx, 1
jne 0x57c6f4
mov ebx, dword [eax + 0x138]
cmp ebx, 1
jne 0x57c6da
lea ebx, [0x6abd90]
jmp 0x57c731
cmp ebx, 2
jne 0x57c6e7
lea ebx, [0x6abd94]
jmp 0x57c731
cmp ebx, 5
jne 0x57c72b
lea ebx, [0x6abd98]
jmp 0x57c731
cmp ebx, 2
je 0x57c6fe
cmp ebx, 0x17
jne 0x57c72b
mov ebx, dword [eax + 0x138]
cmp ebx, 1
jne 0x57c711
lea ebx, [0x6abd88]
jmp 0x57c731
cmp ebx, 2
jne 0x57c71e
lea ebx, [0x6abd8c]
jmp 0x57c731
cmp ebx, 3
jne 0x57c72b
lea ebx, [0x6abd84]
jmp 0x57c731
lea ebx, [0x6abd4c]
mov eax, dword [ebx]
mov ecx, dword [esp + 0x60]
mov dword [esp], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], ecx
mov edx, ebx
call eax
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0x134]
cmp ecx, 1
jne 0x57c782
mov ecx, dword [eax + 0x138]
cmp ecx, 1
jne 0x57c768
lea ecx, [0x6abd90]
jmp 0x57c7bf
cmp ecx, 2
jne 0x57c775
lea ecx, [0x6abd94]
jmp 0x57c7bf
cmp ecx, 5
jne 0x57c7b9
lea ecx, [0x6abd98]
jmp 0x57c7bf
cmp ecx, 2
je 0x57c78c
cmp ecx, 0x17
jne 0x57c7b9
mov ecx, dword [eax + 0x138]
cmp ecx, 1
jne 0x57c79f
lea ecx, [0x6abd88]
jmp 0x57c7bf
cmp ecx, 2
jne 0x57c7ac
lea ecx, [0x6abd8c]
jmp 0x57c7bf
cmp ecx, 3
jne 0x57c7b9
lea ecx, [0x6abd84]
jmp 0x57c7bf
lea ecx, [0x6abd50]
mov eax, dword [ecx]
mov ebx, dword [esp + 8]
mov dword [esp + 0x60], ebx
mov ebp, dword [esp + 0xc]
mov dword [esp + 0x44], ebp
mov esi, dword [esp + 0x5c]
mov dword [esp], esi
mov esi, dword [esp + 0x38]
mov dword [esp + 4], esi
mov edx, ecx
call eax
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x68]
mov dword [ebp + 0x148], ebx
mov ebx, dword [0x817f20]
test ebx, ebx
jne 0x57c80a
mov edx, dword [esp + 0x44]
jmp 0x57c81e
call fcn.00466d20
mov edx, dword [esp + 0x44]
mov dword [edi], edx
mov ebx, dword [ebp + 0x14c]
mov dword [edi + 4], ebx
mov dword [ebp + 0x14c], edx
mov dword [ebp + 0x150], ecx
mov ecx, dword [0x817f20]
test ecx, ecx
je 0x57c844
call fcn.00466d20
mov dword [edi], eax
mov ecx, dword [ebp + 0x154]
mov dword [edi + 4], ecx
mov dword [ebp + 0x154], eax
lea eax, [0x5d1880]
mov dword [esp], eax
mov dword [esp + 4], ebp
lea eax, [0x5af700]
mov dword [esp + 8], eax
lea eax, [0x6abd40]
mov dword [esp + 0xc], eax
call fcn.00416b30
jmp 0x57c9c1
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0x134]
cmp ecx, 1
jne 0x57c8b1
mov ecx, dword [eax + 0x138]
cmp ecx, 1
jne 0x57c897
lea ecx, [0x6abd90]
jmp 0x57c8ee
cmp ecx, 2
jne 0x57c8a4
lea ecx, [0x6abd94]
jmp 0x57c8ee
cmp ecx, 5
jne 0x57c8e8
lea ecx, [0x6abd98]
jmp 0x57c8ee
cmp ecx, 2
je 0x57c8bb
cmp ecx, 0x17
jne 0x57c8e8
mov ecx, dword [eax + 0x138]
cmp ecx, 1
jne 0x57c8ce
lea ecx, [0x6abd88]
jmp 0x57c8ee
cmp ecx, 2
jne 0x57c8db
lea ecx, [0x6abd8c]
jmp 0x57c8ee
cmp ecx, 3
jne 0x57c8e8
lea ecx, [0x6abd84]
jmp 0x57c8ee
lea ecx, [0x6abd54]
mov eax, dword [ecx]
mov ebx, dword [esp + 0x60]
mov dword [esp], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 4], ebx
mov edx, ecx
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x40], ecx
lea ebx, [0x5b8600]
mov dword [esp], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 4], ebx
call fcn.004096b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x60]
mov ebx, dword [esp + 0x68]
mov dword [ebx + 0x148], ecx
mov ecx, dword [0x817f20]
test ecx, ecx
jne 0x57c94b
mov ecx, dword [esp + 0x40]
jmp 0x57c95f
call fcn.00466d20
mov ecx, dword [esp + 0x40]
mov dword [edi], ecx
mov edx, dword [ebx + 0x14c]
mov dword [edi + 4], edx
mov dword [ebx + 0x14c], ecx
mov dword [ebx + 0x150], eax
mov eax, dword [0x817f20]
test eax, eax
jne 0x57c97e
mov eax, dword [esp + 0x80]
jmp 0x57c995
call fcn.00466d20
mov eax, dword [esp + 0x80]
mov dword [edi], eax
mov ecx, dword [ebx + 0x154]
mov dword [edi + 4], ecx
mov dword [ebx + 0x154], eax
lea eax, [0x5d1880]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea eax, [0x5af700]
mov dword [esp + 8], eax
lea eax, [0x6abd40]
mov dword [esp + 0xc], eax
call fcn.00416b30
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x64
ret
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x64
ret
mov eax, dword [esp + 0xc]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ecx
lea edx, [0x5ba440]
mov dword [esp], edx
call fcn.0040bd60
mov eax, dword [esp + 4]
mov dword [eax + 4], 4
lea ecx, [0x5d7840]
mov dword [eax], ecx
mov ecx, dword [esp + 0x60]
mov dword [eax + 8], ecx
mov ecx, dword [0x817f20]
test ecx, ecx
jne 0x57ca3d
mov ecx, dword [esp + 0x4c]
jmp 0x57ca48
call fcn.00466d10
mov ecx, dword [esp + 0x4c]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x6df68c]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
add esp, 0x64
ret
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x64
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x64
ret
mov eax, edi
mov ecx, ebp
call fcn.00466d70
nop
call fcn.00465910
jmp fcn.0057c0f0