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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x8c]
cmp eax, dword [ecx + 8]
jbe 0x5fd868
sub esp, 0x10c
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x118]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x128]
mov ebp, edx
and edx, ebx
mov esi, dword [esp + 0x130]
cmp esi, ebp
jbe 0x5fcc3e
mov edi, ebp
jmp 0x5fcc42
mov edi, ebp
mov ebp, esi
mov dword [esp + 0x50], ebp
mov ebp, dword [esp + 0x110]
sub ebp, ecx
mov ebx, dword [esp + 0x12c]
cmp dword [ebx + 4], 0xa
jg 0x5fcc75
mov dword [esp + 0x104], eax
mov eax, 0x96
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x104]
jmp 0x5fcc8c
mov dword [esp + 0xfc], eax
mov eax, 0x145
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xd0], edi
mov dword [esp + 0x60], edx
mov dword [esp + 0x58], ebp
jg 0x5fccb6
mov dword [esp + 0xf4], eax
mov eax, 1
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xf4]
jmp 0x5fcccd
mov dword [esp + 0xec], eax
mov eax, 5
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0x134]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x138]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x154]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x158]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x15c]
mov dword [esp + 0x28], ebx
mov ebp, dword [esp + 0x160]
mov dword [esp + 0x2c], ebp
call fcn.005fca60
nop
mov eax, dword [esp + 0x154]
mov ecx, dword [eax + 0xe0]
neg ecx
and ecx, 7
imul ecx, ecx, 0x1c
mov edx, dword [eax + ecx]
mov ebx, dword [esp + 0x150]
movss xmm0, dword [ebx + 0xb1c]
mov ebp, dword [ebx + 0xb14]
mov esi, dword [ebx + 0xb10]
mov edi, dword [esp + 0x118]
cmp edi, ebp
jae 0x5fd85e
movss xmm1, dword [esi + edi*4]
cmp ebp, edx
jbe 0x5fd855
lea ebp, [eax + ecx + 0x18]
addss xmm0, dword [ebp]
lea edx, [esi + edx*4]
subss xmm1, dword [edx]
addss xmm0, xmm1
nop
mov edx, dword [esp + 0x110]
mov ebp, dword [esp + 0x158]
mov ecx, dword [esp + 0x15c]
mov esi, 2
mov esi, 0xa
mov dword [esp + 0x78], esi
mov esi, 4
mov dword [esp + 0x98], esi
mov esi, 2
jmp 0x5fcdf3
mov dword [esp + 0x78], esi
mov dword [esp + 0x98], ebp
mov ebp, dword [esp + 0x158]
mov esi, ebx
mov ebx, dword [esp + 0x150]
lea ebx, [esi + edi]
cmp edx, ebx
jb 0x5fce47
cmp ecx, ebx
jbe 0x5fd84e
lea ebx, [ebx + ebx*2]
lea ebx, [ebp + ebx*8 + 0xc]
movss xmm1, dword [ebx]
ucomiss xmm0, xmm1
jb 0x5fce47
lea ebx, [esi + 1]
mov esi, dword [esp + 0x78]
cmp esi, ebx
jne 0x5fce36
movss xmm1, dword [0x7c9bb0]
addss xmm0, xmm1
mov ebp, dword [esp + 0x98]
add esi, ebp
shl ebp, 1
jmp 0x5fcdd8
movss xmm1, dword [0x7c9bb0]
mov ebp, dword [esp + 0x98]
jmp 0x5fcdd8
mov dword [esp + 0x54], esi
mov edx, dword [esp + 0x48]
xor ebx, ebx
xor ebx, ebx
mov dword [esp + 0x74], ebx
jmp 0x5fce81
inc ebx
mov ebp, dword [esp + 0x48]
mov eax, esi
mov edx, ebp
mov ebp, dword [esp + 0x158]
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x118]
mov dword [esp + 0x74], ebx
mov ebx, ecx
mov ecx, dword [esp + 0x15c]
mov ebp, dword [esp + 0x74]
cmp ebp, edx
jae 0x5fd01e
mov ecx, dword [eax + 0xe0]
mov dword [esp + 0x94], ecx
cmp ecx, 8
jb 0x5fcea4
mov ecx, 8
cmp ecx, ebp
jbe 0x5fd01e
mov dword [esp + 0x70], ebx
nop
mov ecx, dword [esp + 0x94]
sub ebp, ecx
and ebp, 7
imul ecx, ebp, 0x1c
mov dword [esp + 0xcc], ecx
mov ebx, dword [eax + ecx]
sub edi, ebx
mov dword [esp + 0xc8], edi
mov dword [esp], edi
call fcn.00612a90
movzx eax, word [esp + 4]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x154]
movss xmm0, dword [edx + ecx + 0x14]
movzx ebx, ax
mov ebp, dword [0x707b9c]
mov esi, dword [0x707b98]
cmp ebp, ebx
jbe 0x5fd845
nop
mov ebx, dword [esi + ebx*4]
mov ebp, dword [esp + 0x150]
mov esi, dword [ebp + 0xb10]
mov edi, dword [ebp + 0xb14]
mov ebp, dword [esp + 0x118]
cmp ebp, edi
jae 0x5fd83c
mov word [esp + 0x32], ax
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [esi + ebp*4]
subss xmm0, dword [esi]
movss dword [esp + 0x44], xmm0
mov dword [esp], ebx
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0x6c]
addss xmm1, xmm0
movss xmm0, dword [esp + 0x44]
addss xmm1, xmm0
movss dword [esp + 0xa0], xmm1
mov eax, dword [esp + 0x54]
lea ecx, [eax - 1]
mov edx, dword [esp + 0x128]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0xcc]
mov esi, dword [esp + 0x154]
mov edi, dword [esp + 0xd0]
mov dword [esp + 0xe4], eax
xor eax, eax
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xe4]
jmp 0x5fd056
mov edx, dword [esp + 0x58]
mov esi, dword [esp + 0x154]
jmp 0x5fcfce
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x74]
cmp ebx, 2
jb 0x5fcfe0
mov ecx, dword [esp + 0x70]
jmp 0x5fce59
mov ebp, dword [esp + 0x12c]
mov ecx, dword [esp + 0x140]
mov dword [esp + 0xdc], eax
xor eax, eax
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xdc]
jmp 0x5fd296
mov eax, dword [esp + 0x54]
mov edi, dword [esp + 0xd0]
mov ecx, dword [esp + 0x70]
jmp 0x5fce59
mov dword [esp + 0x164], ebx
add esp, 0x10c
ret
mov ebp, dword [esp + 0x9c]
inc ebp
mov ebx, esi
mov esi, dword [esp + 0x154]
mov dword [esp + 0x70], edx
mov dword [esp + 0x9c], ebp
mov edx, dword [esp + 0x128]
mov ebp, dword [esp + 0xcc]
mov ebx, dword [esp + 0x9c]
cmp ebx, 0x10
jae 0x5fcfca
mov edx, dword [esp + 0x58]
cmp ecx, edx
jae 0x5fcfce
mov edx, dword [0x707b3c]
mov edi, dword [0x707b38]
cmp ebx, edx
jae 0x5fd833
mov edx, dword [edi + ebx*4]
lea edi, [esi + ebp + 4]
cmp edx, 4
jae 0x5fd827
mov edx, dword [edi + edx*4]
mov edi, dword [0x707b8c]
mov ebp, dword [0x707b88]
cmp ebx, edi
jae 0x5fd81e
add edx, dword [ebp + ebx*4]
mov ebp, dword [esp + 0xd0]
mov edi, ebp
sub ebp, edx
mov esi, dword [esp + 0x60]
add esi, ecx
mov ebx, dword [esp + 0x120]
cmp ebx, esi
jbe 0x5fd815
mov ebx, dword [esp + 0x11c]
movzx ebx, byte [ebx + esi]
mov byte [esp + 0x31], bl
mov ebx, dword [esp + 0x128]
cmp ebx, esi
jb 0x5fcfbd
mov esi, dword [esp + 0x50]
cmp esi, edx
jae 0x5fd100
mov edx, dword [esp + 0x70]
jmp 0x5fd02c
cmp ebp, edi
jb 0x5fd10d
mov edx, dword [esp + 0x70]
jmp 0x5fd02c
mov dword [esp + 0xc4], edx
and ebp, ebx
lea edx, [ecx + ebp]
cmp ebx, edx
jb 0x5fd14d
mov dword [esp + 0x5c], ebp
mov ebp, dword [esp + 0x120]
cmp ebp, edx
jbe 0x5fd80c
mov esi, dword [esp + 0x11c]
add edx, esi
movzx ebx, byte [esp + 0x31]
cmp byte [edx], bl
je 0x5fd156
mov ebx, dword [esp + 0x128]
mov esi, dword [esp + 0x50]
mov edx, dword [esp + 0x70]
jmp 0x5fd02c
mov edx, dword [esp + 0x5c]
cmp ebp, edx
jb 0x5fd803
mov ebx, dword [esp + 0x124]
sub ebx, edx
mov dword [esp + 0xc0], ebx
sub ebp, edx
neg ebx
sar ebx, 0x1f
and ebx, edx
lea edx, [esi + ebx]
mov ebx, dword [esp + 0x120]
mov edi, dword [esp + 0x60]
cmp ebx, edi
jb 0x5fd7fa
mov dword [esp + 0x80], ecx
mov dword [esp], edx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0xc0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x124]
sub eax, edi
mov edx, eax
neg eax
sar eax, 0x1f
and eax, edi
add eax, esi
mov dword [esp + 0xc], eax
sub ebx, edi
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x18], edx
call fcn.00622330
mov eax, dword [esp + 0x1c]
nop
mov ecx, dword [esp + 0x150]
mov edx, dword [ecx + 0xb04]
mov ebx, dword [ecx + 0xb00]
mov ebp, dword [esp + 0x9c]
cmp ebp, edx
jae 0x5fd7f1
mov dword [esp + 0x90], eax
movss xmm0, dword [ebx + ebp*4]
movss xmm1, dword [esp + 0xa0]
addss xmm0, xmm1
movss dword [esp + 0x68], xmm0
mov edx, dword [esp + 0x80]
lea ebx, [edx + 1]
mov esi, dword [esp + 0x70]
jmp 0x5fd608
mov eax, dword [esp + 0x54]
mov ebx, dword [esp + 0x128]
mov edi, dword [esp + 0xd0]
mov ecx, edx
mov edx, esi
mov esi, dword [esp + 0x50]
jmp 0x5fd02c
mov ecx, dword [esp + 0x9c]
inc ecx
mov ebx, dword [esp + 0x12c]
mov edi, dword [esp + 0x140]
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x12c]
mov edi, dword [esp + 0xd0]
mov dword [esp + 0x70], esi
mov dword [esp + 0x9c], ecx
mov ecx, dword [esp + 0x140]
mov esi, dword [esp + 0x154]
mov edi, dword [esp + 0x9c]
cmp ecx, edi
jbe 0x5fd00a
mov edx, dword [esp + 0x148]
cmp edx, edi
jbe 0x5fd5d7
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x144]
lea ecx, [eax + edi*8]
mov edx, dword [ecx]
mov dword [esp + 0xbc], edx
mov ecx, dword [ecx + 4]
mov dword [esp + 0xd4], edx
mov dword [esp + 0xd8], ecx
mov word [esp + 0x34], 0
mov dword [esp + 0x84], 0
lea ecx, [edx + 0xf]
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x2c]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
lea ecx, [esp + 0x34]
mov dword [esp + 0xc], ecx
lea ecx, [esp + 0x84]
mov dword [esp + 0x10], ecx
call fcn.0062e0c0
movzx eax, word [esp + 0x34]
nop
movzx ecx, ax
and ecx, 0x3ff
mov edx, dword [esp + 0x150]
mov ebx, dword [edx + 0xb04]
mov ebp, dword [edx + 0xb00]
cmp ebx, ecx
jbe 0x5fd5ce
movzx eax, ax
shr eax, 0xa
movss xmm0, dword [ebp + ecx*4]
movss dword [esp + 0x3c], xmm0
mov dword [esp], eax
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0xa0]
addss xmm0, xmm1
movss xmm2, dword [esp + 0x3c]
addss xmm0, xmm2
nop
mov eax, dword [esp + 0xd8]
shr eax, 5
mov ecx, dword [esp + 0x8c]
cmp ecx, eax
jae 0x5fd3b9
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xbc]
cmp edx, ebx
jae 0x5fd3ad
mov ebp, dword [esp + 0x4c]
jmp 0x5fd3b5
mov ebp, dword [esp + 0x4c]
cmp ebp, eax
jae 0x5fd3c8
mov ecx, eax
jmp 0x5fd3d1
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0x4c]
mov ecx, eax
mov eax, dword [esp + 0x8c]
movss dword [esp + 0x64], xmm0
mov dword [esp + 0xb8], ecx
mov esi, dword [esp + 0x70]
jmp 0x5fd40c
lea edi, [ecx + 1]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0x4c]
movss xmm0, xmm1
movss xmm1, dword [esp + 0xa0]
mov eax, edi
cmp eax, ecx
ja 0x5fd251
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], esi
cmp edx, ebx
jae 0x5fd448
mov edi, dword [esp + 0xd8]
mov dword [esp + 0xac], edi
and edi, 0x1f
test edi, edi
jne 0x5fd44a
nop
mov edi, dword [esp + 0xac]
shr edi, 5
jmp 0x5fd44a
mov edi, eax
mov dword [esp + 0xa4], edi
mov dword [esp], edi
call fcn.00612bd0
movzx eax, word [esp + 4]
movzx ecx, ax
shr ecx, 3
movzx edx, word [esp + 0x32]
movzx ebx, dx
shr ebx, 3
lea ebx, [ebx + ebx*2]
add ecx, ebx
mov ebx, ecx
shl ecx, 1
cmp ecx, 0x20
sbb ebp, ebp
nop
mov esi, eax
and eax, 7
and edx, 7
shl edx, 3
or eax, edx
shl ebx, 6
mov edx, 0x520d40
shr edx, cl
and ebp, edx
and ebp, 0xc0
lea ecx, [ebx + ebp + 0x40]
movzx eax, ax
or eax, ecx
movzx ecx, si
mov edx, dword [0x707bac]
mov ebx, dword [0x707ba8]
cmp edx, ecx
jbe 0x5fd5c5
nop
mov edx, dword [ebx + ecx*4]
movzx eax, ax
cmp eax, 0x2c0
jae 0x5fd5bb
mov ecx, dword [esp + 0x150]
movss xmm0, dword [ecx + eax*4]
movss dword [esp + 0x38], xmm0
mov dword [esp], edx
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0x64]
addss xmm0, xmm1
movss xmm2, dword [esp + 0x38]
addss xmm0, xmm2
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0xb4]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x15c]
cmp ebx, edx
jbe 0x5fd5b2
lea edx, [edx + edx*2]
mov ebp, dword [esp + 0x158]
lea esi, [ebp + edx*8 + 0xc]
movss xmm2, dword [esi]
ucomiss xmm2, xmm0
jbe 0x5fd598
nop
lea edi, [ebp + edx*8]
mov ebx, dword [esp + 0xa4]
sub ecx, ebx
lea ebx, [ecx + 9]
shl ebx, 0x19
mov ecx, esi
mov esi, dword [esp + 0xb4]
or ebx, esi
mov dword [edi], ebx
lea ebx, [ebp + edx*8 + 4]
mov edi, dword [esp + 0xbc]
mov dword [ebx], edi
lea edx, [ebp + edx*8 + 8]
mov ebx, dword [esp + 0xc8]
mov dword [edx], ebx
movss dword [ecx], xmm0
mov edx, dword [esp + 0xb0]
cmp esi, edx
jbe 0x5fd58f
mov ecx, esi
jmp 0x5fd3e4
mov ecx, esi
mov esi, edx
jmp 0x5fd3e4
mov ebx, dword [esp + 0xc8]
mov edi, dword [esp + 0xbc]
mov esi, dword [esp + 0xb0]
jmp 0x5fd3e4
mov eax, edx
mov ecx, ebx
call fcn.00456b50
mov ecx, 0x2c0
call fcn.00456b40
mov eax, ecx
mov ecx, edx
call fcn.00456b40
mov eax, ecx
mov ecx, ebx
call fcn.00456b50
mov eax, edi
mov ecx, edx
call fcn.00456b50
mov esi, edi
lea edi, [edx + 1]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x150]
mov ebp, esi
movss xmm0, dword [esp + 0x68]
movss xmm1, dword [esp + 0xa0]
mov esi, ebx
mov ebx, edi
cmp ebx, eax
ja 0x5fd232
mov dword [esp + 0x88], ebx
mov dword [esp + 0xa8], esi
mov dword [esp], ebx
call fcn.00612bd0
movzx eax, word [esp + 4]
mov ecx, eax
and eax, 7
movzx edx, word [esp + 0x32]
mov ebx, edx
and edx, 7
shl edx, 3
or eax, edx
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x5fd661
cmp bx, 8
jae 0x5fd661
cmp cx, 0x10
jae 0x5fd661
cmp cx, 8
jb 0x5fd6a7
or eax, 0x40
jmp 0x5fd6a7
mov word [esp + 0x36], cx
movzx ebp, cx
shr ebp, 3
movzx esi, bx
shr esi, 3
lea esi, [esi + esi*2]
add ebp, esi
mov esi, ebp
shl ebp, 1
cmp ebp, 0x20
sbb edi, edi
shl esi, 6
mov ecx, ebp
mov ebx, 0x520d40
shr ebx, cl
and edi, ebx
and edi, 0xc0
lea ebx, [esi + edi + 0x40]
movzx eax, ax
or eax, ebx
movzx ecx, word [esp + 0x36]
movzx ebx, word [esp + 0x32]
cmp ax, 0x80
jae 0x5fd6b8
movss xmm0, dword [esp + 0xa0]
jmp 0x5fd6be
movss xmm0, dword [esp + 0x68]
movzx ebp, cx
mov ecx, dword [0x707bac]
mov esi, dword [0x707ba8]
cmp ecx, ebp
jbe 0x5fd7ea
nop
mov ebp, dword [esi + ebp*4]
movzx eax, ax
cmp eax, 0x2c0
jae 0x5fd7e0
movss dword [esp + 0x7c], xmm0
mov ecx, dword [esp + 0x150]
movss xmm0, dword [ecx + eax*4]
movss dword [esp + 0x40], xmm0
mov dword [esp], ebp
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0x7c]
addss xmm1, xmm0
movss xmm0, dword [esp + 0x40]
addss xmm1, xmm0
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x88]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x15c]
cmp ebx, edx
jbe 0x5fd7d7
lea edx, [edx + edx*2]
mov ebp, dword [esp + 0x158]
lea esi, [ebp + edx*8 + 0xc]
movss xmm0, dword [esi]
ucomiss xmm0, xmm1
jbe 0x5fd7b4
lea edi, [ebp + edx*8]
or ecx, 0x12000000
mov dword [edi], ecx
lea edi, [ebp + edx*8 + 4]
mov ecx, ebx
mov ebx, dword [esp + 0xc4]
mov dword [edi], ebx
mov edi, dword [esp + 0x9c]
lea ebx, [edi + 1]
lea edx, [ebp + edx*8 + 8]
shl ebx, 0x1b
mov ebp, dword [esp + 0xc8]
or ebx, ebp
mov dword [edx], ebx
movss dword [esi], xmm1
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0xa8]
cmp edx, ebx
jb 0x5fd5e0
mov ebx, edx
jmp 0x5fd5e0
mov ecx, ebx
mov edx, dword [esp + 0x88]
mov ebp, dword [esp + 0xc8]
mov edi, dword [esp + 0x9c]
mov ebx, dword [esp + 0xa8]
jmp 0x5fd5e0
mov eax, edx
mov ecx, ebx
call fcn.00456b50
mov ecx, 0x2c0
call fcn.00456b40
mov eax, ebp
call fcn.00456b40
mov eax, ebp
mov ecx, edx
call fcn.00456b50
mov eax, edi
mov ecx, ebx
call fcn.00456bb0
mov eax, edx
mov ecx, ebp
call fcn.00456bb0
mov eax, edx
mov ecx, ebp
call fcn.00456b50
mov eax, esi
mov ecx, ebx
call fcn.00456b50
mov eax, ebx
mov ecx, edi
call fcn.00456b50
mov eax, edx
mov ecx, 4
call fcn.00456b50
mov eax, ebx
mov ecx, edx
call fcn.00456b50
mov eax, ebp
mov ecx, edi
call fcn.00456b50
mov eax, ebx
mov ecx, ebp
call fcn.00456b40
mov eax, ebx
call fcn.00456b50
mov eax, edx
mov ecx, ebp
call fcn.00456b50
mov eax, edi
mov ecx, ebp
call fcn.00456b50
nop
call fcn.00455690
jmp fcn.005fcbf0