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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x2e8]
cmp eax, dword [ecx + 8]
jbe 0x5e128f
sub esp, 0x368
lea edi, [esp + 0x300]
xor eax, eax
call fcn.00463919
lea edi, [esp + 0x31c]
call fcn.0046390d
lea ecx, [esp + 0x31c]
mov dword [esp + 0x30c], ecx
call fcn.0044f7d0
mov ecx, dword [esp]
mov dword [esp + 0x308], ecx
lea edi, [esp + 0x2e4]
xor eax, eax
call fcn.00463919
lea edi, [esp + 0x84]
call fcn.0046390b
lea ecx, [esp + 0x84]
mov dword [esp + 0x2f0], ecx
call fcn.0044f7d0
mov ecx, dword [esp]
mov dword [esp + 0x2ec], ecx
mov ecx, dword [esp + 0x370]
test ecx, ecx
je 0x5e0761
mov edx, dword [esp + 0x374]
mov ebx, dword [esp + 0x36c]
mov eax, ecx
xor ebp, ebp
xor esi, esi
xor edi, edi
xor eax, eax
mov dword [esp + 0x40], eax
mov ecx, 0xffffffff
mov dword [esp + 0x38], ecx
mov eax, 0xffffffff
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x28], eax
lea eax, [0x8939c0]
mov dword [esp + 0x2b8], eax
xor eax, eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x370]
mov ecx, eax
jmp 0x5e07f3
mov dword [esp + 0x37c], 0
mov dword [esp + 0x380], 0
mov dword [esp + 0x384], 0
mov dword [esp + 0x388], 0
mov dword [esp + 0x38c], 0
add esp, 0x368
ret
lea esi, [ebx + ebx*2]
mov dword [eax + esi*4 - 0xc], edx
mov dword [eax + esi*4 - 8], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + esi*4 - 4], ecx
add ecx, 8
mov edx, dword [esp + 0x374]
mov esi, dword [esp + 0x36c]
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x44]
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x370]
mov ebx, dword [esp + 0x36c]
mov ebp, dword [esp + 0x30]
add edx, eax
cmp ecx, edx
jae 0x5e0c6e
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], ebp
mov dword [esp + 0x44], edi
mov dword [esp + 0x20], ecx
cmp esi, 0xf
setae dl
test ebp, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
seta cl
and ebp, edx
or ecx, ebp
test cl, cl
je 0x5e0868
mov ecx, dword [0x8681f8]
mov dword [esp + 0x2d0], ecx
mov edx, dword [0x8681fc]
mov dword [esp + 0x5c], edx
mov ebp, dword [ebx + 0x274]
mov dword [esp + 0x50], ebp
mov ebx, dword [ebx + 0x270]
mov dword [esp + 0x2c4], ebx
mov dword [esp + 0x6c], eax
xor eax, eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x6c]
jmp 0x5e1139
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
sub ecx, edx
mov edx, dword [esp + 0x3c]
sbb edi, edx
cmp ecx, 0x8000000
seta cl
test edi, edi
mov edi, edx
sete dl
xchg ebp, ebx
seta bl
xchg ebp, ebx
and edx, ecx
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5e08da
mov ecx, dword [0x8681f0]
mov dword [esp + 0x2cc], ecx
mov edx, dword [0x8681f4]
mov dword [esp + 0x58], edx
mov ebp, dword [ebx + 0x274]
mov dword [esp + 0x4c], ebp
mov ebx, dword [ebx + 0x270]
mov dword [esp + 0x2c0], ebx
mov dword [esp + 0x74], eax
xor eax, eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x74]
jmp 0x5e0fcc
movzx ecx, byte [esp + 0x378]
test cl, cl
je 0x5e0950
lea edi, [esp + 0x1c8]
xor eax, eax
call fcn.004638e4
mov ecx, dword [ebx + 0x78]
mov edx, dword [ebx + 0x7c]
lea ebp, [0x664f20]
cmp ecx, ebp
jne 0x5e0f9f
lea edi, [esp + 0x1c8]
mov esi, edx
call fcn.00463bd8
lea edi, [esp + 0xd8]
lea esi, [esp + 0x1c8]
call fcn.00463bd8
mov eax, dword [esp + 0xf0]
mov dword [esp], ebx
mov ecx, dword [esp + 0x20]
sub ecx, eax
mov dword [esp + 4], ecx
call fcn.005de420
mov eax, dword [esp + 8]
cmp eax, 0xffffffff
jne 0x5e096d
jmp 0x5e0ce7
mov dword [esp], ebx
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
call fcn.005de420
mov eax, dword [esp + 8]
cmp eax, 0xffffffff
je 0x5e0de0
mov dword [esp + 0x34], eax
lea ecx, [0x641da0]
mov dword [esp], ecx
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x2d8], eax
mov ecx, dword [esp + 0x36c]
mov dword [esp], ecx
lea edx, [0x628fa0]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x34]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], 8
call fcn.005df110
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5e0da2
mov ecx, dword [esp + 0x2d8]
mov edx, dword [ecx + 4]
test edx, edx
sete bl
mov ebp, dword [ecx]
test ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
jne 0x5e0ca6
mov esi, dword [esp + 0x370]
cmp esi, ebp
mov eax, esi
xchg esi, ebx
setbe bl
xchg esi, ebx
test edx, edx
mov edi, ecx
seta cl
and esi, ebx
or esi, ecx
xchg esi, eax
test al, al
xchg esi, eax
je 0x5e0a26
mov ecx, dword [esp + 0x20]
cmp ecx, ebp
xchg esi, ebx
setae bl
xchg esi, ebx
and esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
je 0x5e0a2a
jmp 0x5e0d25
mov ecx, dword [esp + 0x20]
mov ebx, edx
and edx, 0x80000000
test edx, edx
jbe 0x5e0a98
and ebp, 0x7fffffff
cmp ebp, 0xffff
seta dl
and edx, 1
test dl, dl
je 0x5e0e1e
mov edx, dword [0x8681c8]
mov dword [esp + 0x2c8], edx
mov ebx, dword [0x8681cc]
mov dword [esp + 0x54], ebx
mov ebp, dword [esp + 0x36c]
mov esi, dword [ebp + 0x274]
mov dword [esp + 0x48], esi
mov ecx, dword [ebp + 0x270]
mov dword [esp + 0x2bc], ecx
mov dword [esp + 0x7c], eax
xor eax, eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x7c]
jmp 0x5e0e5e
lea eax, [0x63b080]
mov dword [esp], eax
lea ecx, [esp + 0x2e4]
mov dword [esp + 4], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 8], ebp
call fcn.0040f420
movzx eax, byte [esp + 0x14]
test al, al
je 0x5e0ad2
mov esi, dword [esp + 0x2c]
add esi, 1
mov ebp, dword [esp + 0x30]
adc ebp, 0
jmp 0x5e0b0e
mov eax, dword [esp + 0x2d8]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
lea ebx, [0x63b080]
mov dword [esp], ebx
lea ebp, [esp + 0x2e4]
mov dword [esp + 4], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
call fcn.0040f590
mov eax, dword [esp + 0x10]
mov byte [eax], 1
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x2c], esi
mov eax, dword [esp + 0x2d8]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x44]
cmp edx, ecx
setb bl
mov edi, dword [eax]
mov eax, dword [esp + 0x40]
cmp eax, edi
xchg ebp, ebx
setb bl
xchg ebp, ebx
cmp edx, ecx
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, ebp
or esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
je 0x5e0b51
mov eax, ecx
mov edx, edi
jmp 0x5e0b5d
mov eax, ecx
mov edx, edi
mov ecx, dword [esp + 0x44]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], edi
mov ebx, dword [esp + 0x3c]
cmp ebx, eax
xchg ebp, ebx
seta bl
xchg ebp, ebx
mov esi, dword [esp + 0x38]
cmp esi, edx
seta cl
cmp ebx, eax
xchg edi, ebx
sete bl
xchg edi, ebx
and ecx, edi
or ebp, ecx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5e0b92
mov eax, ebx
mov edx, esi
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x44]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], esi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x30], ebx
lea edi, [0x63af00]
mov dword [esp], edi
lea edi, [esp + 0x300]
mov dword [esp + 4], edi
mov edi, dword [esp + 0x20]
mov dword [esp + 8], edi
call fcn.0040ea30
mov edi, dword [esp + 0xc]
test byte [edi], al
mov eax, dword [0x893c80]
test eax, eax
jne 0x5e0bf6
mov ecx, dword [esp + 0x2d8]
mov dword [edi], ecx
jmp 0x5e0c04
mov eax, dword [esp + 0x2d8]
call fcn.00463680
mov ecx, eax
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov ebx, dword [esp + 0x24]
inc ebx
mov ebp, dword [esp + 0x28]
cmp ebp, ebx
jb 0x5e0c22
mov eax, dword [esp + 0x2b8]
jmp 0x5e079f
mov dword [esp + 0x68], edx
mov dword [esp + 0x64], ecx
mov eax, dword [esp + 0x2b8]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x6476e0]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x68]
mov ebp, ecx
mov ecx, dword [esp + 0x64]
jmp 0x5e079f
mov eax, dword [ebx + 0x2c0]
mov dword [esp], eax
lea eax, [0x680760]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x39
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.0051ccc0
mov eax, dword [esp + 0x2b8]
mov dword [esp + 0x37c], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x380], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x384], eax
mov dword [esp + 0x388], 0
mov dword [esp + 0x38c], 0
add esp, 0x368
ret
mov dword [esp + 0x37c], 0
mov dword [esp + 0x380], 0
mov dword [esp + 0x384], 0
mov dword [esp + 0x388], 0
mov dword [esp + 0x38c], 0
add esp, 0x368
ret
mov dword [esp + 0x2dc], 0
mov dword [esp + 0x2e0], 0
mov dword [esp], ecx
call fcn.004094f0
mov eax, dword [esp + 4]
lea ecx, [0x6387a0]
mov dword [esp + 0x2dc], ecx
mov dword [esp + 0x2e0], eax
mov eax, dword [esp + 0x36c]
mov eax, dword [eax + 0x2c0]
mov dword [esp], eax
lea eax, [0x682396]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x5d
lea eax, [esp + 0x2dc]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.0051ccc0
jmp 0x5e0ca6
mov dword [esp + 0x37c], 0
mov dword [esp + 0x380], 0
mov dword [esp + 0x384], 0
mov dword [esp + 0x388], 0
mov dword [esp + 0x38c], 0
add esp, 0x368
ret
mov dword [esp + 0x37c], 0
mov dword [esp + 0x380], 0
mov dword [esp + 0x384], 0
mov dword [esp + 0x388], 0
mov dword [esp + 0x38c], 0
add esp, 0x368
ret
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
jmp 0x5e0ba2
lea ecx, [ebp + 1]
mov edx, dword [esp + 0x2bc]
mov edx, dword [esp + 0x2c8]
mov ebp, dword [esp + 0x36c]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x2bc]
mov ebp, dword [esp + 0x60]
cmp ebp, esi
jge 0x5e0ec6
lea edx, [ecx + ebp*8]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
cmp ecx, ebx
jne 0x5e0e3b
mov dword [esp], edx
mov eax, dword [esp + 0x2c8]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00402a70
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5e0eae
mov eax, dword [esp + 0x370]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x2d8]
jmp 0x5e0e3b
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x48]
cmp ecx, edx
mov eax, dword [esp + 0x370]
mov edi, dword [esp + 0x2d8]
jl 0x5e0f96
mov ecx, dword [esp + 0x36c]
mov edx, dword [ecx + 0x274]
inc edx
mov ebx, dword [ecx + 0x270]
mov ebp, dword [ecx + 0x278]
cmp ebp, edx
jae 0x5e0f5b
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x638660]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x36c]
mov dword [ebx + 0x278], edx
mov edx, dword [0x893c80]
test edx, edx
jne 0x5e0f37
mov dword [ebx + 0x270], eax
jmp 0x5e0f42
lea edi, [ebx + 0x270]
call fcn.00463680
mov edi, dword [esp + 0x2d8]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x370]
mov ecx, dword [esp + 0x36c]
mov dword [ecx + 0x274], edx
mov ebp, dword [0x8681c8]
lea esi, [ebx + edx*8 - 4]
mov ecx, dword [0x8681cc]
mov dword [esi], ecx
lea ecx, [ebx + edx*8 - 8]
mov edx, dword [0x893c80]
test edx, edx
jne 0x5e0f85
mov dword [ecx], ebp
jmp 0x5e0f96
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, ebp
call fcn.00463680
mov eax, ebx
mov edi, edx
mov ecx, dword [esp + 0x20]
jmp 0x5e0e1e
mov dword [esp], ecx
mov dword [esp + 4], ebp
lea eax, [0x638020]
mov dword [esp + 8], eax
call fcn.00409250
inc ecx
mov ebx, dword [esp + 0x2c0]
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x2cc]
mov ecx, dword [esp + 0x60]
cmp ecx, ebp
jge 0x5e1032
lea ebx, [ebx + ecx*8]
mov ebp, dword [ebx + 4]
mov ebx, dword [ebx]
cmp ebp, edx
jne 0x5e0fb5
mov dword [esp], ebx
mov eax, dword [esp + 0x2cc]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.00402a70
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5e1019
mov eax, dword [esp + 0x370]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x58]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x3c]
jmp 0x5e0fb5
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x4c]
cmp ecx, edx
mov eax, dword [esp + 0x370]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x3c]
jl 0x5e1116
mov ecx, dword [esp + 0x36c]
mov edx, dword [ecx + 0x274]
inc edx
mov ebx, dword [ecx + 0x270]
mov ebp, dword [ecx + 0x278]
cmp ebp, edx
jae 0x5e10c8
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x638660]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x36c]
mov dword [ebx + 0x278], edx
mov edx, dword [0x893c80]
test edx, edx
jne 0x5e10a3
mov dword [ebx + 0x270], eax
jmp 0x5e10ae
lea edi, [ebx + 0x270]
call fcn.00463680
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x3c]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x370]
mov ecx, dword [esp + 0x36c]
mov dword [ecx + 0x274], edx
mov ebp, dword [0x8681f0]
mov dword [esp + 0x2d4], ebp
lea ecx, [ebx + edx*8 - 4]
mov ebp, dword [0x8681f4]
mov dword [ecx], ebp
lea ecx, [ebx + edx*8 - 8]
mov edx, dword [0x893c80]
test edx, edx
jne 0x5e1100
mov edx, dword [esp + 0x2d4]
mov dword [ecx], edx
jmp 0x5e1116
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, dword [esp + 0x2d4]
call fcn.00463680
mov eax, ebx
mov edi, edx
mov ebx, dword [esp + 0x36c]
jmp 0x5e08da
inc ecx
mov ebx, dword [esp + 0x2c4]
mov ebp, dword [esp + 0x50]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x2d0]
mov ecx, dword [esp + 0x60]
cmp ecx, ebp
jge 0x5e119f
lea ebx, [ebx + ecx*8]
mov ebp, dword [ebx + 4]
mov ebx, dword [ebx]
cmp ebp, edx
jne 0x5e1122
mov dword [esp], ebx
mov eax, dword [esp + 0x2d0]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.00402a70
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5e1186
mov eax, dword [esp + 0x370]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x44]
jmp 0x5e1122
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x50]
cmp ecx, edx
mov eax, dword [esp + 0x370]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x44]
jl 0x5e1283
mov ecx, dword [esp + 0x36c]
mov edx, dword [ecx + 0x274]
inc edx
mov ebx, dword [ecx + 0x270]
mov ebp, dword [ecx + 0x278]
cmp ebp, edx
jae 0x5e1235
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x638660]
mov dword [esp + 0x10], eax
call fcn.0044aa20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x36c]
mov dword [ebx + 0x278], edx
mov edx, dword [0x893c80]
test edx, edx
jne 0x5e1210
mov dword [ebx + 0x270], eax
jmp 0x5e121b
lea edi, [ebx + 0x270]
call fcn.00463680
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x44]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x370]
mov ecx, dword [esp + 0x36c]
mov dword [ecx + 0x274], edx
mov ebp, dword [0x8681f8]
mov dword [esp + 0x2d4], ebp
lea ecx, [ebx + edx*8 - 4]
mov ebp, dword [0x8681fc]
mov dword [ecx], ebp
lea ecx, [ebx + edx*8 - 8]
mov edx, dword [0x893c80]
test edx, edx
jne 0x5e126d
mov edx, dword [esp + 0x2d4]
mov dword [ecx], edx
jmp 0x5e1283
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, dword [esp + 0x2d4]
call fcn.00463680
mov eax, ebx
mov edi, edx
mov ebx, dword [esp + 0x36c]
jmp 0x5e0868
call fcn.00462270
jmp fcn.005e0670