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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x74
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov edi, edx
mov edx, ecx
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edx
mov esi, dword [edx + 0x10]
cmp edi, esi
jae 0x10021074
test eax, eax
jne 0x10020b8e
movaps xmm0, xmmword [0x100e6aa0]
movups xmmword [esp + 0x38], xmm0
mov dword [esp + 0x4c], 0x3fa00000
movss xmm0, dword [0x100e4f50]
movss dword [esp + 0x48], xmm0
jmp 0x10020bb8
movaps xmm0, xmmword [0x100e6b00]
movups xmmword [esp + 0x38], xmm0
mov dword [esp + 0x48], 0x40000000
mov dword [esp + 0x4c], 0x40100000
mov dword [esp + eax*4 + 0x38], 0
movss xmm0, dword [esp + 0x48]
movss xmm1, dword [esp + 0x44]
xor ebx, ebx
movss xmm2, dword [esp + 0x40]
movss xmm3, dword [esp + 0x3c]
movss dword [esp + 0x18], xmm0
movss dword [esp + 0x1c], xmm1
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x24], xmm3
movss xmm4, dword [0x100e4f40]
lea ecx, [ebx + edi]
movss xmm6, dword [0x100e4f54]
movss xmm5, dword [0x100e5058]
cmp esi, ecx
jbe 0x100210ff
cmp dword [edx + 0x14], 0xf
mov eax, edx
jbe 0x10020c11
mov eax, dword [edx]
movzx esi, byte [eax + ecx]
inc ebx
mov dword [esp + 0x28], ebx
lea eax, [esi - 0x30]
cmp eax, 9
ja 0x10020c32
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [0x100e4f3c]
jmp 0x10020ca2
fld dword [esp + 0x38]
sub esp, 8
fstp qword [esp]
call fcn.10089090
movss xmm3, dword [esp + 0x2c]
add esp, 8
movss xmm5, dword [0x100e5058]
cmp esi, 0x80
jb 0x10020c74
fstp dword [esp + 0x34]
movss xmm0, dword [esp + 0x34]
addss xmm0, dword [0x100e4fd0]
movss dword [esp + 0x38], xmm0
jmp 0x10020cc9
movss xmm1, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x20]
movss xmm4, dword [0x100e4f40]
movss xmm6, dword [0x100e4f54]
fstp dword [esp + 0x34]
movss xmm0, dword [esp + 0x34]
addss xmm0, dword [0x100e4f50]
movss dword [esp + 0x38], xmm0
cmp esi, 0x20
je 0x10020d06
cmp esi, 0x30
jb 0x10020cb7
cmp esi, 0x39
jbe 0x10020d06
cmp esi, 0x41
jb 0x10020cc1
cmp esi, 0x5a
jbe 0x10020d06
cmp esi, 0x80
jb 0x10020cf4
movss xmm2, dword [esp + 0x20]
addss xmm3, xmm5
addss xmm2, xmm5
movss dword [esp + 0x24], xmm3
movss dword [esp + 0x3c], xmm3
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x40], xmm2
jmp 0x10020d87
addss xmm3, xmm6
movss dword [esp + 0x24], xmm3
movss dword [esp + 0x3c], xmm3
jmp 0x10020d1b
addss xmm3, xmm4
movss dword [esp + 0x24], xmm3
movss dword [esp + 0x3c], xmm3
cmp esi, 0x20
je 0x10020d4f
cmp esi, 0x30
jb 0x10020d25
cmp esi, 0x39
jbe 0x10020d4f
cmp esi, 0x61
jb 0x10020d2f
cmp esi, 0x7a
jbe 0x10020d4f
cmp esi, 0x80
jb 0x10020d49
addss xmm2, xmm5
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x40], xmm2
jmp 0x10020d87
addss xmm2, xmm6
jmp 0x10020d53
addss xmm2, xmm4
movss dword [esp + 0x40], xmm2
movss dword [esp + 0x20], xmm2
cmp esi, 0xd
je 0x10020dbb
cmp esi, 0x2a
je 0x10020dbb
cmp esi, 0x3e
je 0x10020dbb
cmp esi, 0x20
je 0x10020dbb
cmp esi, 0x30
jb 0x10020d7d
cmp esi, 0x39
jbe 0x10020dbb
cmp esi, 0x41
jb 0x10020d87
cmp esi, 0x5a
jbe 0x10020dbb
cmp esi, 0x80
jb 0x10020d9f
movss xmm1, dword [esp + 0x1c]
addss xmm1, dword [0x100e50b4]
jmp 0x10020dbf
movss xmm0, dword [esp + 0x1c]
addss xmm0, dword [0x100e509c]
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x44], xmm0
jmp 0x10020dcb
addss xmm1, xmm4
movss dword [esp + 0x44], xmm1
movss dword [esp + 0x1c], xmm1
movss xmm1, dword [esp + 0x18]
lea eax, [esi - 0x20]
cmp eax, 0x3e
ja 0x10020de3
addss xmm1, dword [0x100e4f48]
jmp 0x10020dfd
cmp esi, 0x80
jb 0x10020df5
addss xmm1, dword [0x100e50b0]
jmp 0x10020dfd
addss xmm1, dword [0x100e5098]
movss xmm0, dword [esp + 0x4c]
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x48], xmm1
addss xmm0, dword [0x100e4f50]
movss dword [esp + 0x4c], xmm0
cmp ebx, 4
jl 0x10020f8f
lea ecx, [esp + 0x50]
lea eax, [esp + 0x4c]
cmp ecx, eax
ja 0x10020e42
lea esi, [esp + 0x38]
mov edi, ecx
lea ecx, [esp + 0x64]
mov eax, esi
cmp ecx, eax
jae 0x10020e5d
movups xmm0, xmmword [esp + 0x38]
call fcn.1008b1d0
cvttps2dq xmm0, xmm0
lea edi, [esp + 0x60]
lea esi, [esp + 0x48]
movups xmmword [esp + 0x50], xmm0
sub edi, esi
nop
fld dword [esi]
sub esp, 8
fstp qword [esp]
call fcn.10089090
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
add esp, 8
call fcn.1008ad30
mov dword [esi + edi], eax
add esi, 4
lea eax, [esp + 0x50]
cmp esi, eax
jne 0x10020e60
lea eax, [esp + 0x68]
mov edx, 0x7fffffff
push eax
lea ecx, [esp + 0x54]
call fcn.10020a00
add esp, 4
lea eax, [esp + 0x68]
xor ecx, ecx
nop word [eax + eax]
add ecx, dword [eax]
lea edx, [esp + 0x80]
add eax, 4
cmp eax, edx
jne 0x10020eb0
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x64]
mov esi, dword [esp + 0x54]
cmp edx, eax
jge 0x10020eea
cmp edx, esi
jge 0x10020eea
cmp edx, dword [esp + 0x58]
jge 0x10020eea
cmp edx, dword [esp + 0x5c]
jge 0x10020eea
cmp edx, dword [esp + 0x60]
jl 0x100210f6
cmp eax, edx
jl 0x100210ea
mov eax, dword [esp + 0x6c]
mov ebx, dword [esp + 0x70]
add eax, ebx
add eax, dword [esp + 0x74]
mov edi, dword [esp + 0x78]
add eax, edi
je 0x100210ea
cmp ecx, 1
jne 0x10020f2c
test edi, edi
jg 0x100210de
test ebx, ebx
jg 0x100210d2
cmp dword [esp + 0x74], 0
jg 0x1002106f
lea eax, [esi + 1]
cmp eax, edx
jge 0x10020f55
cmp eax, dword [esp + 0x64]
jge 0x10020f55
cmp eax, dword [esp + 0x60]
jge 0x10020f55
cmp eax, dword [esp + 0x58]
jge 0x10020f55
cmp esi, dword [esp + 0x5c]
jl 0x100210c6
je 0x1002107b
movss xmm0, dword [esp + 0x48]
movss xmm1, dword [esp + 0x44]
movss xmm2, dword [esp + 0x40]
movss xmm3, dword [esp + 0x3c]
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
movss dword [esp + 0x18], xmm0
movss dword [esp + 0x1c], xmm1
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x24], xmm3
jmp 0x10020f95
movss xmm1, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
lea eax, [ebx + edi]
mov esi, dword [edx + 0x10]
cmp eax, esi
jne 0x10020be4
lea ecx, [esp + 0x50]
lea eax, [esp + 0x4c]
cmp ecx, eax
ja 0x10020fc3
lea esi, [esp + 0x38]
mov edi, ecx
lea ecx, [esp + 0x64]
mov eax, esi
cmp ecx, eax
jae 0x10020fde
movups xmm0, xmmword [esp + 0x38]
call fcn.1008b1d0
cvttps2dq xmm0, xmm0
lea edi, [esp + 0x60]
lea esi, [esp + 0x48]
movups xmmword [esp + 0x50], xmm0
sub edi, esi
fld dword [esi]
sub esp, 8
fstp qword [esp]
call fcn.10089090
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
add esp, 8
call fcn.1008ad30
mov dword [esi + edi], eax
add esi, 4
lea eax, [esp + 0x50]
cmp esi, eax
jne 0x10020fe0
lea eax, [esp + 0x68]
mov edx, 0x7fffffff
push eax
lea ecx, [esp + 0x54]
call fcn.10020a00
add esp, 4
lea ecx, [esp + 0x68]
xor edx, edx
nop word [eax + eax]
add edx, dword [ecx]
lea esi, [esp + 0x80]
add ecx, 4
cmp ecx, esi
jne 0x10021030
cmp dword [esp + 0x50], eax
je 0x100210f6
cmp edx, 1
jne 0x100210c6
cmp dword [esp + 0x7c], 0
jg 0x100210ea
cmp dword [esp + 0x78], 0
jg 0x100210de
cmp dword [esp + 0x70], 0
jg 0x100210d2
cmp dword [esp + 0x74], 0
jle 0x100210c6
mov eax, 3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x30]
inc ecx
add ecx, dword [esp + 0x28]
mov esi, dword [edi + 0x10]
cmp ecx, esi
jae 0x100210c6
nop
cmp dword [edi + 0x14], 0xf
mov eax, edi
jbe 0x1002109a
mov eax, dword [edi]
mov al, byte [eax + ecx]
cmp al, 0xd
je 0x1002106f
cmp al, 0x2a
je 0x1002106f
cmp al, 0x3e
je 0x1002106f
mov edx, ecx
cmp al, 0x20
je 0x100210c1
cmp al, 0x30
jl 0x100210b7
cmp al, 0x39
jle 0x100210c1
cmp al, 0x41
jl 0x100210c6
mov ecx, edx
cmp al, 0x5a
jg 0x100210c6
inc ecx
cmp ecx, esi
jb 0x10021090
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 5
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.10005ca0
int3