Function at 0x5fe7f0
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 0x5ff2f1
sub esp, 0xbf8
mov eax, dword [esp + 0xc14]
mov ecx, dword [eax + 8]
mov dword [esp + 0x88], ecx
lea edx, [0x7347e0]
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 0x5fe8a9
mov edx, dword [esp + 0xc00]
jmp 0x5fe8d7
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 + 0x78], 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, [0x7429a0]
mov dword [esp], ebp
shl ebx, 2
mov dword [esp + 0x6c], 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 + 0x6c]
xor ebp, ebp
mov esi, ecx
jmp 0x5fe95f
lea eax, [edi + 1]
mov ecx, dword [esp + 0x6c]
mov ebp, esi
mov esi, ebx
mov dword [esp + 0x84], eax
mov dword [esp + 0x60], esi
mov dword [esp + 0xc8], edx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x6c], 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 + 0x84]
lea eax, [ecx + eax - 1]
mov edx, dword [esp + 0xbfc]
cmp edx, eax
jbe 0x5febe3
mov ebx, dword [esp + 0xc00]
lea ebp, [ebx + ecx]
mov esi, dword [esp + 0x5c]
cmp esi, ebp
jbe 0x5fe9c3
mov eax, ebp
jmp 0x5fe9c7
mov eax, ebp
mov ebp, esi
mov dword [esp + 0x9c], eax
sub edx, ecx
mov dword [esp + 0x68], edx
mov esi, dword [esp + 0x74]
lea ebx, [esi + 0x80]
mov edi, dword [esp + 0x6c]
cmp edi, ebx
jae 0x5fe9fc
mov dword [esp + 0x98], ebx
test edi, edi
je 0x5ff233
mov ebx, edi
jmp 0x5ff233
mov ebx, dword [esp + 0x60]
cmp ebx, esi
jb 0x5ff221
mov dword [esp + 0x60], ebx
mov dword [esp + 0x6c], edi
mov edi, dword [0x7cc0fc]
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, [0x7cc0f8]
cmp ecx, ebx
jne 0x5ff20b
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.00622bb0
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x74]
lea ecx, [eax + ebp]
mov edx, dword [esp + 0xc8]
mov ebx, dword [esp + 0x60]
mov esi, ebp
jmp 0x5ff126
mov ebp, dword [esp + 0xbfc]
mov edi, dword [esp + 0x84]
cmp ebp, edi
jbe 0x5ff1d8
mov ebp, dword [esp + 0xd0]
mov dword [ebp + edi*4], eax
test eax, eax
jbe 0x5fe954
lea eax, [esi + eax - 1]
cmp ebx, eax
jbe 0x5ff1d1
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 0x5ff1b1
mov ebp, dword [ebp]
mov ecx, esi
mov esi, dword [esp + 0x74]
cmp ebx, esi
jbe 0x5ff1c8
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 + 0x78]
cmp ebp, ebx
ja 0x5feb6b
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 + 0x84]
mov ebx, dword [esp + 0xd0]
mov ebp, dword [esp + 0x68]
xor esi, esi
jmp 0x5ff16d
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 0x5ff114
mov dword [esp + 0x70], ebx
mov dword [esp + 0x7c], esi
mov ecx, dword [esp + 0xc20]
lea edi, [esp + 0xa0]
cmp ecx, edi
je 0x5fec3b
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, [0x74ca00]
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 0x5fec8e
mov edx, 0x220
mov dword [esp + 0x64], edx
mov eax, dword [esp + 0xbfc]
mov dword [esp + 0xbf4], eax
lea ecx, [0x7334e0]
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, [0x7334e0]
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 + 0x64]
mov dword [esp + 0xbe0], eax
mov eax, dword [esp + 0xcc]
mov edx, dword [esp + 0x9c]
xor ebx, ebx
jmp 0x5feeac
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 + 0x60]
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.005fdb40
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.005fd880
mov eax, dword [esp + 0x84]
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 0x5ff087
nop
lea edi, [esp + 0xb0]
mov ebp, eax
xor eax, eax
call fcn.00456d5a
mov dword [esp + 0xb0], 1
movss xmm0, dword [0x7c9bc0]
movss dword [esp + 0xbc], xmm0
xor ecx, ecx
jmp 0x5ff0f3
mov dword [esp + 0x84], ebx
test ebx, ebx
je 0x5fef97
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 0x5ff104
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 + 0x7c]
mov dword [esp + 0x24], ecx
call fcn.005fc140
jmp 0x5fefdd
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.005fc540
mov eax, dword [esp + 0xc30]
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x94]
cmp edx, ecx
jb 0x5ff0ff
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0xc34]
mov dword [ebx], edx
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xc2c]
mov dword [esi], ebp
mov edi, dword [esp + 0xc24]
cmp edi, 4
jle 0x5ff044
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 0x5ff05b
mov edx, dword [esp + 0xc20]
lea ebp, [esp + 0xa0]
cmp edx, ebp
mov dword [esp + 0x90], edi
je 0x5fed43
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 0x5fed43
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 + 0x80], ecx
lea ecx, [ecx + ecx*2]
lea edi, [ebp + ecx*8]
lea esi, [esp + 0xb0]
call fcn.00457234
mov ecx, dword [esp + 0x80]
inc ecx
cmp ecx, edx
jae 0x5feee9
jb 0x5ff0d1
jmp 0x5ff10b
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 0x5fead8
cmp ebp, ebx
jae 0x5ff202
lea esi, [edx + ebp*8 + 4]
mov esi, dword [esi]
cmp ebx, edi
jbe 0x5ff1f9
nop
shr esi, 5
lea ebp, [edx + ebp*8 + 0xc]
mov ebp, dword [ebp]
shr ebp, 5
cmp ebp, esi
jae 0x5ff120
jmp 0x5ff1e1
mov dword [edx + esi*4], 0
inc esi
mov edx, dword [esp + 0x84]
cmp esi, ecx
jge 0x5ff199
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 0x5ff15e
jmp 0x5ff1bf
mov ebp, dword [esp + 0x74]
lea ecx, [ebp + 1]
lea eax, [edx + eax - 1]
mov edx, dword [esp + 0xc8]
mov ebx, dword [esp + 0x60]
mov edi, eax
mov ebp, dword [esp + 0xd0]
mov esi, ecx
jmp 0x5fe954
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, [0x7346e0]
mov dword [esp], eax
lea eax, [0x7ca28c]
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, [0x7539e0]
mov dword [esp + 8], eax
call fcn.00408d90
mov eax, esi
mov ecx, ebx
call fcn.00456bb0
shl ebx, 1
mov ecx, dword [esp + 0x84]
mov ecx, dword [esp + 0x98]
cmp ebx, ecx
jb 0x5ff22a
mov dword [esp + 0x58], ebp
mov dword [esp + 0x98], ebx
lea eax, [0x7429a0]
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 + 0x6c]
test ecx, ecx
je 0x5ff2b5
mov edx, dword [esp + 0x60]
cmp edx, ecx
jb 0x5ff2eb
mov edx, dword [esp + 0x98]
cmp edx, ecx
jg 0x5ff280
mov ecx, edx
mov ebx, dword [esp + 0xc8]
cmp ebx, eax
je 0x5ff2bc
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 0x5ff2bc
mov edx, dword [esp + 0x98]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x68]
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 0x5fea00
call fcn.00456b90
nop
call fcn.00455690
jmp fcn.005fe7f0