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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xb78]
cmp eax, dword [ecx + 8]
jbe 0x5ff34c
sub esp, 0xbf8
mov eax, dword [esp + 0xc14]
mov ecx, dword [eax + 8]
mov dword [esp + 0x88], ecx
lea edx, [0x734760]
mov dword [esp], edx
mov edx, dword [esp + 0xbfc]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.004426a0
mov eax, dword [esp + 0x88]
cmp eax, 0x20
sbb ecx, ecx
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0xd0], edx
mov ebx, dword [esp + 0xc18]
mov ebp, dword [ebx + 0x30]
mov esi, dword [esp + 0xc1c]
mov dword [esp], esi
call ebp
mov ecx, dword [esp + 0x88]
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x9c]
and eax, ecx
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0xbfc]
cmp dword [esp + 4], ecx
jbe 0x5fe919
mov edx, dword [esp + 0xc00]
jmp 0x5fe947
mov eax, dword [esp + 0xc18]
mov ecx, dword [eax + 0x30]
mov edx, dword [esp + 0xc1c]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 0xbfc]
mov ecx, dword [esp + 0xc00]
lea edx, [ecx + eax]
sub edx, dword [esp + 4]
inc edx
mov ecx, eax
mov dword [esp + 0x84], edx
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
lea edi, [esp + 0xd4]
xor eax, eax
mov ebx, ecx
mov ecx, 0x2c9
rep stosd dword es:[edi], eax
lea ebp, [0x741100]
mov dword [esp], ebp
shl ebx, 2
mov dword [esp + 0x60], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004426a0
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x9c]
add ebx, 0xfffffff0
mov dword [esp + 0x5c], ebx
xor eax, eax
mov ecx, dword [esp + 0x60]
xor ebp, ebp
mov esi, ecx
jmp 0x5fe9d2
lea eax, [edi + 1]
mov ecx, dword [esp + 0x60]
mov ebp, esi
mov esi, ebx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x7c], esi
mov dword [esp + 0xc8], edx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x60], ecx
mov ebx, dword [esp + 0xc18]
mov edi, dword [ebx + 0x18]
mov ebx, dword [esp + 0xc1c]
mov dword [esp], ebx
call edi
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x6c]
lea eax, [ecx + eax - 1]
mov edx, dword [esp + 0xbfc]
cmp edx, eax
jbe 0x5fec4d
mov ebx, dword [esp + 0xc00]
lea ebp, [ebx + ecx]
mov esi, dword [esp + 0x5c]
cmp esi, ebp
jbe 0x5fea30
mov eax, ebp
jmp 0x5fea34
mov eax, ebp
mov ebp, esi
mov dword [esp + 0x9c], eax
sub edx, ecx
mov dword [esp + 0x64], edx
mov esi, dword [esp + 0x74]
lea ebx, [esi + 0x80]
mov edi, dword [esp + 0x60]
cmp edi, ebx
jae 0x5fea69
mov dword [esp + 0x98], ebx
test edi, edi
je 0x5ff291
mov ebx, edi
jmp 0x5ff291
mov ebx, dword [esp + 0x7c]
cmp ebx, esi
jb 0x5ff282
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x60], edi
mov edi, dword [0x7cbe34]
sub ebx, esi
mov dword [esp + 0x94], ebx
neg ebx
shl esi, 3
sar ebx, 0x1f
and esi, ebx
mov ebx, dword [esp + 0xc8]
add esi, ebx
mov ecx, dword [esp + 0xc18]
lea ebx, [0x7cbe30]
cmp ecx, ebx
jne 0x5ff26c
mov ecx, dword [esp + 0xc1c]
mov dword [esp], ecx
mov ebx, dword [esp + 0xc14]
lea edi, [ebx + 0x3c]
mov dword [esp + 4], edi
mov edi, dword [esp + 0xc04]
mov dword [esp + 8], edi
mov ecx, dword [esp + 0xc08]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc0c]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0xc10]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], esi
mov ebp, dword [esp + 0x94]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], ebp
call fcn.00622b60
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x74]
lea ecx, [eax + ebp]
mov edx, dword [esp + 0xc8]
mov ebx, dword [esp + 0x7c]
mov esi, ebp
jmp 0x5ff18a
mov ebp, dword [esp + 0xbfc]
mov edi, dword [esp + 0x6c]
cmp ebp, edi
jbe 0x5ff239
mov ebp, dword [esp + 0xd0]
mov dword [ebp + edi*4], eax
test eax, eax
jbe 0x5fe9c7
lea eax, [esi + eax - 1]
cmp ebx, eax
jbe 0x5ff232
lea ebp, [edx + eax*8]
lea esi, [edx + eax*8 + 4]
mov esi, dword [esi]
mov eax, esi
shr esi, 5
cmp esi, 0x145
jbe 0x5ff212
mov ebp, dword [ebp]
mov ecx, esi
mov esi, dword [esp + 0x74]
cmp ebx, esi
jbe 0x5ff229
mov dword [esp + 0x8c], ecx
lea ebx, [edx + esi*8]
mov dword [ebx], ebp
lea ebx, [edx + esi*8 + 4]
mov dword [ebx], eax
mov eax, dword [esp + 0xd0]
mov dword [eax + edi*4], 1
mov ebx, dword [esp + 0x9c]
add ebx, ecx
mov ebp, dword [esp + 0x84]
cmp ebp, ebx
ja 0x5febd8
mov ebx, ebp
mov eax, dword [esp + 0xc18]
mov ecx, dword [eax + 0x34]
mov edx, dword [esp + 0xc1c]
mov dword [esp], edx
mov ebp, dword [esp + 0xc04]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xc08]
mov dword [esp + 8], esi
mov esi, dword [esp + 0xc0c]
mov dword [esp + 0xc], esi
mov esi, dword [esp + 0xc10]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0xc00]
lea ebp, [esi + edi + 1]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ebx
call ecx
mov eax, dword [esp + 0x8c]
lea ecx, [eax - 1]
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0xd0]
mov ebp, dword [esp + 0x64]
xor esi, esi
jmp 0x5ff1ce
mov eax, dword [esp + 0xc34]
mov ebx, dword [eax]
mov ebp, dword [esp + 0xc2c]
mov esi, dword [ebp]
mov edi, dword [esp + 0xc28]
cmp edi, 4
jb 0x5ff178
mov dword [esp + 0x80], ebx
mov dword [esp + 0x78], esi
mov ecx, dword [esp + 0xc20]
lea edi, [esp + 0xa0]
cmp ecx, edi
je 0x5feca8
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x10
call fcn.00457450
mov edx, dword [esp + 0xbfc]
mov eax, dword [esp + 0xc30]
mov ecx, dword [eax + 4]
mov dword [esp + 0x94], ecx
lea ebx, [0x74b360]
mov dword [esp], ebx
lea ebx, [edx + 1]
mov dword [esp + 0x9c], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc14]
mov edx, dword [ecx + 0x34]
cmp edx, 0x220
jbe 0x5fecfb
mov edx, 0x220
mov dword [esp + 0x70], edx
mov eax, dword [esp + 0xbfc]
mov dword [esp + 0xbf4], eax
lea ecx, [0x733520]
mov dword [esp], ecx
lea ebx, [eax + 2]
mov dword [esp + 0x98], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x98]
mov dword [esp + 0xbe8], ecx
mov dword [esp + 0xbec], ecx
mov dword [esp + 0xbe4], eax
mov eax, dword [esp + 0xc14]
mov ecx, dword [eax + 0x34]
lea edx, [0x733520]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc14]
mov edx, dword [ecx + 0x34]
mov dword [esp + 0xbd8], edx
mov dword [esp + 0xbdc], edx
mov dword [esp + 0xbd4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0xbe0], eax
mov eax, dword [esp + 0xcc]
mov edx, dword [esp + 0x9c]
xor ebx, ebx
jmp 0x5fef16
mov eax, dword [esp + 0xbfc]
mov dword [esp], eax
mov ecx, dword [esp + 0xc00]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xc04]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xc08]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xc0c]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0xc10]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0xc14]
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], 0
mov ebp, dword [esp + 0xc20]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], edi
mov ebx, dword [esp + 0xc28]
mov dword [esp + 0x28], ebx
lea edx, [esp + 0xd4]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0xc8]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0xcc]
mov dword [esp + 0x48], edx
mov esi, dword [esp + 0x9c]
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
call fcn.005fdbb0
mov eax, dword [esp + 0xbfc]
mov dword [esp], eax
mov ecx, dword [esp + 0xc00]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xcc]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0xc20]
mov dword [esp + 0x14], ebp
mov esi, dword [esp + 0xc24]
mov dword [esp + 0x18], esi
mov edi, dword [esp + 0xc28]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0xc2c]
mov dword [esp + 0x20], edi
mov ebp, dword [esp + 0xc14]
mov dword [esp + 0x24], ebp
mov ebp, dword [esp + 0xc30]
mov dword [esp + 0x28], ebp
mov eax, dword [esp + 0xc34]
mov dword [esp + 0x2c], eax
call fcn.005fd8f0
mov eax, dword [esp + 0x6c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0x9c]
mov ecx, dword [esp + 0xc14]
mov edx, dword [esp + 0x9c]
cmp ebx, 2
jae 0x5ff0f1
nop
lea edi, [esp + 0xb0]
mov ebp, eax
xor eax, eax
call fcn.00456d5a
mov dword [esp + 0xb0], 1
movss xmm0, dword [0x7c9938]
movss dword [esp + 0xbc], xmm0
xor ecx, ecx
jmp 0x5ff157
mov dword [esp + 0x6c], ebx
test ebx, ebx
je 0x5feffe
mov esi, dword [esp + 0xc30]
mov ecx, dword [esi + 4]
mov edi, dword [esi]
mov ebx, dword [esi + 8]
mov edx, dword [esp + 0x94]
cmp ecx, edx
jb 0x5ff168
lea eax, [esp + 0xd4]
mov dword [esp], eax
mov ebp, dword [esp + 0xc00]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xc04]
mov dword [esp + 8], esi
mov eax, dword [esp + 0xc08]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc0c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xc10]
mov dword [esp + 0x14], eax
sub ebx, edx
mov dword [esp + 0x90], ebx
neg ebx
shl edx, 4
sar ebx, 0x1f
and edx, ebx
add edx, edi
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x94]
sub ecx, edx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x24], ecx
call fcn.005fc1b0
jmp 0x5ff044
lea eax, [esp + 0xd4]
mov dword [esp], eax
mov ecx, dword [esp + 0xc00]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xc04]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xc08]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xc0c]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0xc10]
mov dword [esp + 0x14], esi
call fcn.005fc5b0
mov eax, dword [esp + 0xc30]
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x94]
cmp edx, ecx
jb 0x5ff163
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0xc34]
mov dword [ebx], edx
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0xc2c]
mov dword [esi], ebp
mov edi, dword [esp + 0xc24]
cmp edi, 4
jle 0x5ff0ae
mov edx, dword [esp + 0xc20]
lea ebp, [esp + 0xa0]
cmp edx, ebp
mov ebp, 4
mov dword [esp + 0x90], ebp
lea ebp, [esp + 0xa0]
jmp 0x5ff0c5
mov edx, dword [esp + 0xc20]
lea ebp, [esp + 0xa0]
cmp edx, ebp
mov dword [esp + 0x90], edi
je 0x5fedb0
mov dword [esp], edx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0x90]
shl eax, 2
mov dword [esp + 8], eax
call fcn.00457450
mov edi, dword [esp + 0xc24]
jmp 0x5fedb0
nop
mov dword [esp + 0xbe4], 0
mov dword [esp + 0xbe8], 0
mov dword [esp + 0xbec], 0
mov dword [esp + 0xbd4], 0
mov dword [esp + 0xbd8], 0
mov dword [esp + 0xbdc], 0
add esp, 0xbf8
ret
mov dword [esp + 0x68], ecx
lea ecx, [ecx + ecx*2]
lea edi, [ebp + ecx*8]
lea esi, [esp + 0xb0]
call fcn.00457234
mov ecx, dword [esp + 0x68]
inc ecx
cmp ecx, edx
jae 0x5fef53
jb 0x5ff13b
jmp 0x5ff16f
call fcn.00456b80
mov eax, edx
call fcn.00456ba0
mov eax, ecx
mov ecx, edx
call fcn.00456b50
mov ecx, 4
mov edx, edi
call fcn.00456b80
mov esi, dword [esp + 0x74]
mov ebp, edi
lea edi, [ebp + 1]
cmp edi, ecx
jae 0x5feb45
cmp ebp, ebx
jae 0x5ff263
lea esi, [edx + ebp*8 + 4]
mov esi, dword [esi]
cmp ebx, edi
jbe 0x5ff25a
nop
shr esi, 5
lea ebp, [edx + ebp*8 + 0xc]
mov ebp, dword [ebp]
shr ebp, 5
cmp ebp, esi
jae 0x5ff184
jmp 0x5ff242
mov dword [edx + esi*4], 0
inc esi
mov edx, dword [esp + 0x6c]
cmp esi, ecx
jge 0x5ff1fa
lea edi, [ebp - 1]
mov dword [esp + 0x94], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
inc edx
shl edx, 2
sar edi, 0x1f
and edx, edi
add edx, ebx
mov edi, dword [esp + 0x94]
cmp esi, edi
jb 0x5ff1c2
jmp 0x5ff220
mov ebp, dword [esp + 0x74]
lea ecx, [ebp + 1]
lea eax, [edx + eax - 1]
mov edx, dword [esp + 0xc8]
mov ebx, dword [esp + 0x7c]
mov edi, eax
mov ebp, dword [esp + 0xd0]
mov esi, ecx
jmp 0x5fe9c7
mov eax, esi
mov ecx, edi
call fcn.00456b40
mov eax, esi
mov ecx, ebx
call fcn.00456b50
mov ecx, ebx
call fcn.00456b50
mov eax, edi
mov ecx, ebp
call fcn.00456b50
lea eax, [0x7345e0]
mov dword [esp], eax
lea eax, [0x7c9cbc]
mov dword [esp + 4], eax
call fcn.00430590
mov eax, edi
mov ecx, ebx
call fcn.00456b50
mov eax, ebp
mov ecx, ebx
call fcn.00456b50
mov dword [esp], ecx
mov dword [esp + 4], edi
lea eax, [0x7537e0]
mov dword [esp + 8], eax
call fcn.00408d90
mov eax, esi
mov ecx, ebx
call fcn.00456bb0
shl ebx, 1
mov ecx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x98]
cmp ebx, ecx
jb 0x5ff28b
mov dword [esp + 0x58], ebp
mov dword [esp + 0x98], ebx
lea eax, [0x741100]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
test ecx, ecx
je 0x5ff313
mov edx, dword [esp + 0x7c]
cmp edx, ecx
jb 0x5ff346
mov edx, dword [esp + 0x98]
cmp edx, ecx
jg 0x5ff2de
mov ecx, edx
mov ebx, dword [esp + 0xc8]
cmp ebx, eax
je 0x5ff31a
mov dword [esp + 0xcc], eax
mov dword [esp], eax
mov dword [esp + 4], ebx
shl ecx, 3
mov dword [esp + 8], ecx
call fcn.00457450
mov eax, dword [esp + 0xcc]
mov edx, dword [esp + 0x98]
jmp 0x5ff31a
mov edx, dword [esp + 0x98]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x98]
mov ebx, edi
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x9c]
jmp 0x5fea6d
call fcn.00456b90
nop
call fcn.00455690
jmp fcn.005fe860