Function at 0x10174f70
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1023374b
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x40
push esi
push edi
mov eax, dword [0x102d5080]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebx + 8]
mov eax, dword [0x10bbf250]
mov esi, dword [edi + 0x60]
mov dword [ebp - 0x18], esi
test eax, eax
je 0x10174fc0
add eax, 2
mov eax, dword [eax]
mov eax, dword [eax + esi + 4]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x10176a51
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x30], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x3c], eax
mov eax, dword [0x103754ec]
test al, 1
jne 0x10175158
or eax, 1
mov dword [0x103754ec], eax
mov dword [ebp - 4], 0
mov eax, dword [0x10371278]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
je 0x10175070
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10175062
mov eax, dword [ecx + 0xc]
mov esi, 0x811c9dc5
mov dword [ebp - 0x38], eax
xor ecx, ecx
inc ecx
cmp byte [ecx + eax], 0
jne 0x10175036
xor edx, edx
test ecx, ecx
je 0x1017505f
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x38]
cmp edx, ecx
jb 0x10175043
cmp esi, 0x4e9f1122
je 0x10175086
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
jne 0x10175020
mov esi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x10373c48], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1017515d
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x2c], edx
cmp dword [eax + 4], edx
jle 0x1017512b
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x34], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x101750cf
cmp dword [ecx + 4], 0
jle 0x101750cf
push 0
mov edx, 0x940131c5
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x101750cf
mov ecx, dword [esi + 0x2c]
add ecx, eax
add dword [ebp - 0x20], ecx
mov eax, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov esi, 0x811c9dc5
nop dword [eax + eax]
inc ecx
cmp byte [ecx + eax], 0
jne 0x101750e0
xor edx, edx
test ecx, ecx
je 0x1017510c
nop dword [eax]
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x38]
cmp edx, ecx
jb 0x101750f0
cmp esi, 0x940131c5
je 0x1017513e
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
inc edx
mov ecx, dword [ebp - 0x28]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x101750a0
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x18]
mov eax, edx
mov dword [0x10373c48], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1017515d
mov eax, dword [ebp - 0x34]
mov esi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x20]
mov dword [0x10373c48], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1017515d
mov eax, dword [0x10373c48]
push dword [eax + esi]
mov ecx, dword [ebp - 0x30]
call dword [ebp - 0x3c]
mov dword [ebp - 0x34], eax
test eax, eax
je 0x10176a51
mov ecx, dword [0x10bbf240]
add ecx, 0xaff3cc8c
xor ecx, 0x3743f7af
mov eax, dword [ecx + 0xf4]
mov dword [ebp - 0x30], eax
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x40], eax
mov eax, dword [0x10373c90]
test al, 1
jne 0x101752f8
or eax, 1
mov dword [0x10373c90], eax
mov dword [ebp - 4], 1
mov eax, dword [0x10371278]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
je 0x10175210
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10175202
mov eax, dword [ecx + 0xc]
mov esi, 0x811c9dc5
mov dword [ebp - 0x3c], eax
xor ecx, ecx
inc ecx
cmp byte [ecx + eax], 0
jne 0x101751d6
xor edx, edx
test ecx, ecx
je 0x101751ff
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x3c]
cmp edx, ecx
jb 0x101751e3
cmp esi, 0xcd2ed041
je 0x10175226
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
jne 0x101751c0
mov esi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x10375574], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101752fd
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x2c], edx
cmp dword [eax + 4], edx
jle 0x101752cb
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1017526f
cmp dword [ecx + 4], 0
jle 0x1017526f
push 0
mov edx, 0xa2ccb41a
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1017526f
mov ecx, dword [esi + 0x2c]
add ecx, eax
add dword [ebp - 0x20], ecx
mov eax, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x3c], eax
mov esi, 0x811c9dc5
nop dword [eax + eax]
inc ecx
cmp byte [ecx + eax], 0
jne 0x10175280
xor edx, edx
test ecx, ecx
je 0x101752ac
nop dword [eax]
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x3c]
cmp edx, ecx
jb 0x10175290
cmp esi, 0xa2ccb41a
je 0x101752de
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
inc edx
mov ecx, dword [ebp - 0x28]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10175240
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x18]
mov eax, edx
mov dword [0x10375574], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101752fd
mov eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x20]
mov dword [0x10375574], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101752fd
mov eax, dword [0x10375574]
mov ecx, dword [ebp - 0x34]
movsx eax, word [eax + ecx]
mov ecx, dword [ebp - 0x30]
push eax
call dword [ebp - 0x40]
movss xmm0, dword [0x102bda5c]
mov edx, eax
mov dword [ebp - 0x38], edx
test edx, edx
je 0x101754a4
mov ecx, dword [0x10373cb0]
movss xmm0, dword [0x102bd634]
mov dword [ebp - 0x34], 0x3a83126f
test cl, 1
jne 0x10175480
or ecx, 1
mov dword [0x10373cb0], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x10371278]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
je 0x101753b0
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x101753a2
mov eax, dword [ecx + 0xc]
mov esi, 0x811c9dc5
mov dword [ebp - 0x40], eax
xor ecx, ecx
inc ecx
cmp byte [ecx + eax], 0
jne 0x10175376
xor edx, edx
test ecx, ecx
je 0x1017539f
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x40]
cmp edx, ecx
jb 0x10175383
cmp esi, 0x72e242a1
je 0x101753c9
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
jne 0x10175360
xor eax, eax
mov esi, dword [ebp - 0x18]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x38]
mov dword [0x10375558], eax
jmp 0x10175485
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x2c], edx
cmp dword [eax + 4], edx
jle 0x1017546b
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x3c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10175411
cmp dword [ecx + 4], 0
jle 0x10175411
push 0
mov edx, 0xf3e9a9ed
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x10175411
mov ecx, dword [esi + 0x2c]
add ecx, eax
add dword [ebp - 0x20], ecx
mov eax, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x40], eax
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + eax], 0
jne 0x10175420
xor edx, edx
test ecx, ecx
je 0x1017544c
nop dword [eax]
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x40]
cmp edx, ecx
jb 0x10175430
cmp esi, 0xf3e9a9ed
je 0x10175472
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
inc edx
mov ecx, dword [ebp - 0x28]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x101753e2
mov edx, dword [ebp - 0x20]
mov eax, edx
jmp 0x101753b2
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x20]
jmp 0x101753b2
mov eax, dword [0x10375558]
cmp byte [eax + esi], 0
lea ecx, [edx + 0x138]
jne 0x10175497
lea ecx, [edx + 0x134]
comiss xmm0, dword [ecx]
lea eax, [ebp - 0x34]
cmovbe eax, ecx
movss xmm0, dword [eax]
mov eax, dword [0x10373c54]
movss dword [ebp - 0x34], xmm0
test al, 1
jne 0x101755fe
or eax, 1
mov dword [0x10373c54], eax
mov dword [ebp - 4], 3
mov eax, dword [0x10371278]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
je 0x1017552d
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1017551f
mov eax, dword [ecx + 0xc]
mov esi, 0x811c9dc5
mov dword [ebp - 0x40], eax
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + eax], 0
jne 0x101754f0
xor edx, edx
test ecx, ecx
je 0x1017551c
nop dword [eax]
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x40]
cmp edx, ecx
jb 0x10175500
cmp esi, 0x4e9f1122
je 0x10175544
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
jne 0x101754d5
xor edx, edx
mov esi, dword [ebp - 0x18]
mov dword [0x1037550c], edx
mov dword [ebp - 4], 0xffffffff
jmp 0x10175604
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x2c], edx
cmp dword [eax + 4], edx
jle 0x1017552f
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x3c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1017558f
cmp dword [ecx + 4], 0
jle 0x1017558f
push 0
mov edx, 0x53630d14
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1017558f
mov ecx, dword [esi + 0x2c]
add ecx, eax
add dword [ebp - 0x20], ecx
mov eax, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x40], eax
mov esi, 0x811c9dc5
nop dword [eax + eax]
inc ecx
cmp byte [ecx + eax], 0
jne 0x101755a0
xor edx, edx
test ecx, ecx
je 0x101755cc
nop dword [eax]
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x40]
cmp edx, ecx
jb 0x101755b0
cmp esi, 0x53630d14
je 0x101755f0
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
inc edx
mov ecx, dword [ebp - 0x28]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10175560
mov edx, dword [ebp - 0x20]
jmp 0x1017552f
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0x20]
jmp 0x1017552f
mov edx, dword [0x1037550c]
movss xmm6, dword [edx + esi]
movss xmm7, dword [edx + esi + 4]
mov eax, dword [edx + esi + 8]
lea esi, [edi + 0x74]
mov dword [edi + 0xf0], eax
movss xmm1, dword [edi + 0x160]
movss xmm2, dword [edi + 0x15c]
movss xmm0, dword [edi + 0x164]
mulss xmm1, xmm1
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x40], xmm6
movaps xmm1, xmm6
movss dword [ebp - 0x3c], xmm7
mulss xmm1, xmm6
addss xmm2, xmm0
movaps xmm0, xmm7
mulss xmm0, xmm7
addss xmm1, xmm0
movss xmm0, dword [esi]
movss dword [ebp - 0x44], xmm0
comiss xmm1, xmm2
movaps xmm1, xmm7
movaps xmm2, xmm0
mulss xmm2, dword [0x102bdac4]
seta al
mov byte [edi + 0x1ad], al
movss xmm5, dword [edi + 0xcc]
movss xmm3, dword [edi + 0xc8]
subss xmm1, xmm5
movss xmm4, dword [edi + 0xd0]
subss xmm6, xmm3
movaps xmm7, xmm4
movss dword [ebp - 0x1c], xmm2
xorps xmm7, xmmword [0x102bdf90]
movss dword [ebp - 0x30], xmm7
movaps xmm0, xmm1
movss dword [ebp - 0x28], xmm1
mulss xmm0, xmm1
movaps xmm1, xmm6
mulss xmm1, xmm6
movss dword [ebp - 0x2c], xmm6
addss xmm0, xmm1
movaps xmm1, xmm7
mulss xmm1, xmm7
addss xmm0, xmm1
call fcn.1000ded0
movss xmm7, dword [0x102bd7ac]
movaps xmm1, xmm0
comiss xmm1, xmm2
xorps xmm6, xmm6
movss dword [ebp - 0x20], xmm7
jbe 0x10175740
addss xmm1, dword [0x102bd604]
movaps xmm2, xmm7
divss xmm2, xmm1
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, dword [ebp - 0x2c]
mulss xmm0, dword [ebp - 0x28]
mulss xmm2, dword [ebp - 0x30]
mulss xmm1, dword [ebp - 0x1c]
mulss xmm0, dword [ebp - 0x1c]
mulss xmm2, dword [ebp - 0x1c]
addss xmm3, xmm1
addss xmm5, xmm0
addss xmm4, xmm2
jmp 0x1017579d
movaps xmm0, xmm2
xorps xmm0, xmmword [0x102bdf90]
comiss xmm0, xmm1
jbe 0x10175790
addss xmm1, dword [0x102bd604]
movaps xmm2, xmm7
divss xmm2, xmm1
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, dword [ebp - 0x2c]
mulss xmm0, dword [ebp - 0x28]
mulss xmm2, dword [ebp - 0x30]
mulss xmm1, dword [ebp - 0x1c]
mulss xmm0, dword [ebp - 0x1c]
mulss xmm2, dword [ebp - 0x1c]
subss xmm3, xmm1
subss xmm5, xmm0
subss xmm4, xmm2
jmp 0x1017579d
movss xmm3, dword [ebp - 0x40]
xorps xmm4, xmm4
movss xmm5, dword [ebp - 0x3c]
unpcklps xmm3, xmm5
movq qword [edi + 0xc8], xmm3
movss dword [ebp - 0x48], xmm4
mov eax, dword [ebp - 0x48]
mov dword [edi + 0xd0], eax
movss xmm2, dword [edi + 0xc8]
movss xmm3, dword [edi + 0xcc]
movaps xmm5, xmm2
movss xmm4, dword [edi + 0xd0]
movaps xmm0, xmm3
mulss xmm0, xmm3
movaps xmm1, xmm4
mulss xmm5, xmm2
mulss xmm1, xmm4
addss xmm0, xmm5
addss xmm0, xmm1
call fcn.1000ded0
addss xmm0, dword [0x102bd604]
movaps xmm1, xmm7
divss xmm1, xmm0
mulss xmm2, xmm1
mulss xmm3, xmm1
mulss xmm4, xmm1
movss dword [edi + 0xd4], xmm2
movss dword [edi + 0xd8], xmm3
movss dword [edi + 0xdc], xmm4
movss xmm0, dword [edi + 0xcc]
movss xmm1, dword [edi + 0xd0]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm5
addss xmm0, xmm1
call fcn.1000ded0
movaps xmm4, xmm0
minss xmm4, dword [0x102bda5c]
comiss xmm4, xmm6
movss dword [edi + 0xec], xmm4
jbe 0x1017587f
movq xmm0, qword [edi + 0xd4]
lea esi, [edi + 0x74]
mov eax, dword [edi + 0xdc]
movq qword [edi + 0xe0], xmm0
mov dword [edi + 0xe8], eax
movss xmm2, dword [ebp - 0x34]
lea ecx, [ebp - 0x3c]
movaps xmm0, xmm4
movss xmm1, dword [0x102bd7f8]
divss xmm0, xmm2
lea edx, [ebp - 0x40]
mov dword [ebp - 0x38], 0x3f800000
mov dword [ebp - 0x40], 0
divss xmm1, xmm2
comiss xmm6, xmm0
movss dword [ebp - 0x3c], xmm0
mulss xmm1, xmm4
seta al
test al, al
cmove edx, ecx
movss dword [edi + 0xf8], xmm1
comiss xmm0, xmm7
lea ecx, [ebp - 0x38]
movss xmm0, dword [0x102bd840]
divss xmm0, xmm2
seta al
test al, al
cmove ecx, edx
mov eax, dword [ecx]
mov dword [edi + 0xf4], eax
comiss xmm1, xmm7
mulss xmm0, xmm4
movss dword [edi + 0xfc], xmm0
movss xmm0, dword [0x102bd73c]
jb 0x1017590c
movss dword [edi + 0x2a4], xmm4
jmp 0x10175963
comiss xmm0, xmm1
jbe 0x10175963
movss xmm5, dword [0x102bd9ac]
movss xmm1, dword [edi + 0x2a4]
movaps xmm3, xmm5
movss xmm2, dword [ebp - 0x44]
subss xmm3, xmm1
mulss xmm2, dword [0x102bd97c]
comiss xmm3, xmm2
jbe 0x10175940
addss xmm1, xmm2
jmp 0x10175958
movaps xmm0, xmm2
xorps xmm0, xmmword [0x102bdf90]
comiss xmm0, xmm3
jbe 0x10175955
subss xmm1, xmm2
jmp 0x10175958
movaps xmm1, xmm5
movss dword [edi + 0x2a4], xmm1
lea esi, [edi + 0x74]
movss xmm1, dword [esi]
xor cl, cl
comiss xmm4, xmm6
mov byte [ebp - 0x11], 0
jbe 0x10175999
movss xmm0, dword [edi + 0x100]
comiss xmm6, xmm0
mov dword [edi + 0x104], 0
addss xmm1, xmm0
setae byte [ebp - 0x11]
movss dword [edi + 0x100], xmm1
jmp 0x101759bd
movss xmm0, dword [edi + 0x104]
comiss xmm6, xmm0
mov dword [edi + 0x100], 0
addss xmm1, xmm0
setae cl
movss dword [edi + 0x104], xmm1
mov eax, dword [ebp - 0x18]
mov esi, dword [eax + 0x2990]
add esi, 0xa8
cmp byte [edi + 0x138], 0
mov dword [ebp - 0x1c], esi
jne 0x10175a4c
test cl, cl
je 0x10175a4c
cmp byte [edi + 0x108], 0
je 0x10175a4c
cmp byte [edi + 0x128], 0
jne 0x10175a4c
cmp byte [edi + 0x109], 0
jne 0x10175a4c
movss xmm0, dword [0x102bd95c]
comiss xmm0, dword [edi + 0x2ac]
jbe 0x10175a4c
push 5
mov ecx, edi
call fcn.10173bf0
mov ecx, eax
cmp ecx, 2
jl 0x10175a45
mov edx, dword [esi + 0x30]
test edx, edx
je 0x10175a45
mov dword [esi + 0x18], ecx
mov eax, dword [edx]
push ecx
push esi
mov ecx, edx
mov eax, dword [eax + 0x37c]
mov dword [ebp - 0x44], eax
call dword [ebp - 0x44]
fstp dword [esi + 0x28]
mov dword [esi + 0x2c], 0
mov dword [esi + 0x20], 0
mov byte [edi + 0x138], 1
mov eax, dword [esi + 0x18]
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x44], eax
add ecx, 4
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov esi, dword [eax + 0xd4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
xor edx, edx
mov ecx, esi
test esi, esi
push eax
cmovne edx, esi
mov edx, dword [edx]
mov edx, dword [edx + 0x80]
call edx
test eax, eax
je 0x10175d5c
push dword [ebp - 0x44]
mov ecx, dword [ebp - 0x18]
mov edx, eax
mov esi, dword [0x103bfe00]
call esi
cmp eax, 0x3d4
je 0x10175ab2
cmp eax, 0x3d3
jne 0x10175d5c
cmp byte [edi + 0x138], 0
je 0x10175cbe
movss xmm0, dword [0x102bd6f8]
comiss xmm0, dword [edi + 0xfc]
jb 0x10175cbe
mov esi, dword [ebp - 0x1c]
movss xmm1, dword [esi + 0x28]
movss xmm5, dword [esi + 0x20]
movaps xmm0, xmm1
movss dword [ebp - 0x44], xmm5
call fcn.1000deb0
movss xmm2, dword [ebp - 0x20]
xorps xmm6, xmm6
comiss xmm6, xmm0
jae 0x10175b3a
mulss xmm1, dword [edi + 0x74]
addss xmm1, dword [esi + 0x2c]
comiss xmm1, xmm2
jb 0x10175b12
movss xmm1, dword [0x102bd7a4]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm6, xmm1
jbe 0x10175b2c
addss xmm1, xmm2
jmp 0x10175b35
comiss xmm1, xmm2
jbe 0x10175b35
subss xmm1, xmm2
movss dword [esi + 0x2c], xmm1
mov eax, dword [0x10bbf250]
mov ecx, dword [edi + 0x60]
test eax, eax
je 0x10175b49
add eax, 2
mov eax, dword [eax]
mov ecx, dword [eax + ecx + 4]
test ecx, ecx
jne 0x10175b5b
xorps xmm0, xmm0
jmp 0x10175c55
mov edx, dword [esi + 0x18]
lea eax, [ecx + 4]
test eax, eax
je 0x10175b77
mov eax, dword [0x103bfc8c]
push edx
call eax
movss xmm5, dword [ebp - 0x44]
xorps xmm6, xmm6
jmp 0x10175b8f
mov ecx, dword [ecx]
cmp edx, dword [ecx + 0xbc]
jle 0x10175b85
xor eax, eax
jmp 0x10175b8f
mov eax, dword [ecx + 0xc0]
add eax, ecx
add eax, edx
movss xmm0, dword [esi + 0x2c]
comiss xmm0, dword [0x102bd7a4]
movss xmm2, dword [ebp - 0x20]
jb 0x10175ba5
movaps xmm0, xmm2
movss xmm1, dword [eax + 0x68]
xorps xmm3, xmm3
comiss xmm1, xmm6
movss xmm4, dword [eax + 0x6c]
jbe 0x10175bc2
comiss xmm1, xmm0
jbe 0x10175bc2
divss xmm0, xmm1
jmp 0x10175bdb
comiss xmm2, xmm4
xorps xmm1, xmm1
jbe 0x10175c2f
comiss xmm0, xmm4
jbe 0x10175c2f
subss xmm0, xmm2
subss xmm4, xmm2
divss xmm0, xmm4
comiss xmm6, xmm0
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x3c], 0x3f800000
lea edx, [ebp - 0x44]
mov dword [ebp - 0x44], 0
movss xmm3, dword [0x102bd844]
movss dword [ebp - 0x40], xmm0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x3c]
comiss xmm0, xmm2
seta al
test al, al
cmove ecx, edx
movss xmm1, dword [ecx]
movaps xmm0, xmm1
addss xmm0, xmm1
mulss xmm1, xmm1
subss xmm3, xmm0
mulss xmm3, xmm1
movaps xmm1, xmm3
movss xmm0, dword [0x102bd63c]
comiss xmm0, xmm1
jbe 0x10175c41
xorps xmm0, xmm0
jmp 0x10175c55
comiss xmm1, xmm2
seta al
test al, al
jne 0x10175c51
movss xmm0, xmm3
jmp 0x10175c55
movss xmm0, xmm2
comiss xmm6, xmm0
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x3c], 0x3f800000
lea edx, [ebp - 0x44]
mov dword [ebp - 0x44], 0
movss dword [ebp - 0x40], xmm0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x3c]
comiss xmm0, xmm2
seta al
test al, al
cmove ecx, edx
movss xmm0, dword [ecx]
movss dword [esi + 0x20], xmm0
subss xmm0, xmm5
divss xmm0, dword [edi + 0x74]
movss dword [esi + 0x24], xmm0
movss xmm0, dword [esi + 0x28]
mulss xmm0, dword [edi + 0x74]
addss xmm0, dword [esi + 0x2c]
comiss xmm0, xmm2
setb al
mov byte [edi + 0x138], al
jmp 0x10175d5f
mov esi, dword [ebp - 0x1c]
movss xmm1, dword [edi + 0x74]
mulss xmm1, dword [0x102bd87c]
mov byte [edi + 0x138], 0
movss xmm3, dword [esi + 0x20]
movss xmm4, dword [0x102bdf90]
movaps xmm2, xmm3
xorps xmm2, xmm4
comiss xmm2, xmm1
jbe 0x10175cf3
addss xmm1, xmm3
jmp 0x10175d0d
movaps xmm0, xmm1
xorps xmm0, xmm4
comiss xmm0, xmm2
jbe 0x10175d0a
movaps xmm0, xmm3
subss xmm0, xmm1
movaps xmm1, xmm0
jmp 0x10175d0d
xorps xmm1, xmm1
xorps xmm6, xmm6
movss dword [ebp - 0x40], xmm1
comiss xmm6, xmm1
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x3c], 0x3f800000
lea edx, [ebp - 0x44]
mov dword [ebp - 0x44], 0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x3c]
comiss xmm1, dword [ebp - 0x20]
seta al
test al, al
cmove ecx, edx
movss xmm0, dword [ecx]
movss dword [esi + 0x20], xmm0
subss xmm0, xmm3
divss xmm0, dword [edi + 0x74]
movss dword [esi + 0x24], xmm0
jmp 0x10175d5f
xorps xmm6, xmm6
movss xmm1, dword [edi + 0x80]
lea esi, [edi + 0x80]
movss xmm0, dword [0x102bdba0]
lea edx, [ebp - 0x44]
movss xmm2, dword [0x102bda6c]
lea ecx, [ebp - 0x40]
comiss xmm0, xmm1
mov dword [ebp - 0x40], 0x43b40000
mov dword [ebp - 0x44], 0xc3b40000
mov dword [ebp - 0x28], esi
movss xmm7, dword [edi + 0x78]
movss xmm5, dword [0x102bdb98]
seta al
movss xmm4, dword [0x102bda24]
test al, al
movss dword [edi + 0x84], xmm1
cmove edx, esi
comiss xmm1, xmm2
seta al
test al, al
cmove ecx, edx
movss xmm3, dword [ecx]
subss xmm7, xmm3
comiss xmm5, xmm7
jbe 0x10175dda
addss xmm7, xmm2
jmp 0x10175dec
comiss xmm7, xmm4
jbe 0x10175dec
lea eax, [edi + 0x80]
subss xmm7, xmm2
mov dword [ebp - 0x28], eax
movss xmm0, dword [edi + 0xf8]
lea ecx, [ebp - 0x40]
movss xmm1, dword [edi + 0xfc]
lea edx, [ebp - 0x44]
comiss xmm6, xmm0
mov dword [ebp - 0x3c], 0x3f800000
mov dword [ebp - 0x44], 0
movss dword [ebp - 0x38], xmm1
movss xmm1, dword [edi + 0x11c]
mulss xmm1, dword [0x102bd700]
seta al
test al, al
movss dword [ebp - 0x40], xmm0
cmove edx, ecx
lea ecx, [ebp - 0x3c]
comiss xmm0, dword [ebp - 0x20]
addss xmm1, dword [0x102bd6f0]
movss xmm0, dword [ebp - 0x20]
seta al
movaps xmm5, xmm0
test al, al
cmove ecx, edx
mulss xmm1, dword [ecx]
subss xmm5, xmm1
movss xmm1, dword [edi + 0xa4]
comiss xmm1, xmm6
movss dword [ebp - 0x34], xmm5
movss xmm5, dword [0x102bdb98]
jbe 0x10175ed7
comiss xmm6, dword [edi + 0xfc]
lea ecx, [ebp - 0x38]
mov esi, dword [ebp - 0x28]
lea edx, [ebp - 0x44]
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0x3f800000
movss xmm6, dword [edi + 0xfc]
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x40]
comiss xmm6, xmm0
movss xmm0, dword [ebp - 0x34]
seta al
test al, al
cmove ecx, edx
mulss xmm1, dword [ecx]
movss dword [ebp - 0x44], xmm1
movss xmm1, dword [0x102bd73c]
subss xmm1, xmm0
mulss xmm1, dword [ebp - 0x44]
addss xmm0, xmm1
jmp 0x10175edc
movss xmm0, dword [ebp - 0x34]
movaps xmm1, xmm0
mulss xmm0, dword [edi + 0x334]
mulss xmm1, dword [edi + 0x338]
comiss xmm7, xmm1
jbe 0x10175f07
movaps xmm0, xmm1
call fcn.1000deb0
movss xmm3, dword [edi + 0x78]
subss xmm3, xmm0
jmp 0x10175f23
comiss xmm0, xmm7
jbe 0x10175f23
call fcn.1000deb0
movaps xmm3, xmm0
addss xmm3, dword [edi + 0x78]
movss dword [esi], xmm3
lea esi, [edi + 0x80]
comiss xmm5, xmm3
jbe 0x10175f3f
nop dword [eax + eax]
addss xmm3, xmm2
comiss xmm5, xmm3
ja 0x10175f30
lea esi, [edi + 0x80]
comiss xmm3, xmm4
jbe 0x10175f53
subss xmm3, xmm2
comiss xmm3, xmm4
ja 0x10175f44
lea esi, [edi + 0x80]
mov ecx, dword [ebp - 0x18]
add ecx, 8
movss dword [edi + 0x80], xmm3
mov eax, dword [ecx]
call dword [eax + 0x28]
cmp byte [edi + 0x108], 0
je 0x101762c2
movss xmm0, dword [edi + 0xec]
comiss xmm0, dword [0x102bd6b4]
movss xmm3, dword [edi + 0x74]
movss xmm4, dword [esi]
jbe 0x1017607d
movss xmm0, dword [edi + 0x78]
mulss xmm0, dword [0x102bda28]
mulss xmm4, dword [0x102bda28]
movss xmm6, dword [edi + 0x11c]
mulss xmm6, dword [0x102bd8d4]
cvttss2si eax, xmm0
addss xmm6, dword [0x102bd920]
movzx eax, ax
movd xmm2, eax
cvttss2si eax, xmm4
cvtdq2ps xmm2, xmm2
movzx eax, ax
movd xmm7, eax
mulss xmm2, dword [0x102bd650]
cvtdq2ps xmm7, xmm7
mulss xmm6, xmm3
movaps xmm5, xmm2
mulss xmm7, dword [0x102bd650]
movss dword [ebp - 0x44], xmm2
xorps xmm2, xmm2
comiss xmm2, xmm6
subss xmm5, xmm7
jbe 0x10176009
xorps xmm6, xmmword [0x102bdf90]
movss xmm4, dword [0x102bdb98]
comiss xmm4, xmm5
movss xmm3, dword [0x102bda24]
movss xmm1, dword [0x102bda6c]
jbe 0x1017602c
addss xmm5, xmm1
jmp 0x10176035
comiss xmm5, xmm3
jbe 0x10176035
subss xmm5, xmm1
comiss xmm5, xmm6
jbe 0x1017604b
addss xmm7, xmm6
movss dword [edi + 0x80], xmm7
jmp 0x101762dd
movaps xmm0, xmm6
xorps xmm0, xmmword [0x102bdf90]
comiss xmm0, xmm5
jbe 0x1017606b
subss xmm7, xmm6
movss dword [edi + 0x80], xmm7
jmp 0x101762dd
movss xmm7, dword [ebp - 0x44]
movss dword [edi + 0x80], xmm7
jmp 0x101762dd
mulss xmm3, dword [0x102bd9c4]
mov eax, dword [0x10373c30]
movss dword [ebp - 0x2c], xmm3
test al, 1
jne 0x101761f2
or eax, 1
mov dword [0x10373c30], eax
mov dword [ebp - 4], 4
mov eax, dword [0x10371278]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
je 0x1017610d
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x101760ff
mov eax, dword [ecx + 0xc]
mov esi, 0x811c9dc5
mov dword [ebp - 0x44], eax
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + eax], 0
jne 0x101760d0
xor edx, edx
test ecx, ecx
je 0x101760fc
nop dword [eax]
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x44]
cmp edx, ecx
jb 0x101760e0
cmp esi, 0x72e242a1
je 0x10176120
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1037127c]
jne 0x101760b6
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375560], eax
jmp 0x101761f7
mov eax, dword [ebp - 0x38]
xor edx, edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x34], edx
cmp dword [eax + 4], edx
jle 0x101761cb
xor ecx, ecx
mov dword [ebp - 0x30], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x40], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1017616f
cmp dword [ecx + 4], 0
jle 0x1017616f
push 0
mov edx, 0x9ef0d03e
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1017616f
mov ecx, dword [esi + 0x2c]
add ecx, eax
add dword [ebp - 0x28], ecx
mov eax, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x44], eax
mov esi, 0x811c9dc5
nop dword [eax + eax]
inc ecx
cmp byte [ecx + eax], 0
jne 0x10176180
xor edx, edx
test ecx, ecx
je 0x101761ac
nop dword [eax]
movsx eax, byte [edx + eax]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x44]
cmp edx, ecx
jb 0x10176190
cmp esi, 0x9ef0d03e
je 0x101761db
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
inc edx
mov ecx, dword [ebp - 0x30]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jl 0x10176140
mov edx, dword [ebp - 0x28]
mov eax, edx
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375560], eax
jmp 0x101761f7
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x28]
mov dword [0x10375560], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101761f7
mov eax, dword [0x10375560]
mov ecx, dword [ebp - 0x18]
xorps xmm2, xmm2
comiss xmm2, xmm3
movss xmm0, dword [eax + ecx]
mulss xmm0, dword [0x102bda28]
mulss xmm4, dword [0x102bda28]
cvttss2si eax, xmm0
movzx eax, ax
movd xmm7, eax
cvttss2si eax, xmm4
cvtdq2ps xmm7, xmm7
movzx eax, ax
movd xmm6, eax
mulss xmm7, dword [0x102bd650]
cvtdq2ps xmm6, xmm6
movaps xmm5, xmm7
mulss xmm6, dword [0x102bd650]
subss xmm5, xmm6
jbe 0x10176256
xorps xmm3, xmmword [0x102bdf90]
movss dword [ebp - 0x2c], xmm3
movss xmm4, dword [0x102bdb98]
comiss xmm4, xmm5
movss xmm3, dword [0x102bda24]
movss xmm1, dword [0x102bda6c]
jbe 0x10176279
addss xmm5, xmm1
jmp 0x10176282
comiss xmm5, xmm3
jbe 0x10176282
subss xmm5, xmm1
movss xmm0, dword [ebp - 0x2c]
comiss xmm5, xmm0
jbe 0x1017629a
addss xmm6, xmm0
movss dword [edi + 0x80], xmm6
jmp 0x101762dd
xorps xmm0, xmmword [0x102bdf90]
comiss xmm0, xmm5
jbe 0x101762b5
subss xmm6, dword [ebp - 0x2c]
movss dword [edi + 0x80], xmm6
jmp 0x101762dd
movaps xmm6, xmm7
movss dword [edi + 0x80], xmm6
jmp 0x101762dd
movss xmm1, dword [0x102bda6c]
xorps xmm2, xmm2
movss xmm3, dword [0x102bda24]
movss xmm4, dword [0x102bdb98]
movss xmm5, dword [ebp - 0x20]
comiss xmm5, dword [edi + 0xec]
jb 0x101763b1
cmp byte [edi + 0x108], 0
je 0x101763b1
cmp byte [edi + 0x128], 0
jne 0x101763b1
cmp byte [edi + 0x109], 0
jne 0x101763b1
movss xmm6, dword [edi + 0x74]
comiss xmm6, xmm2
jbe 0x101763b1
movss xmm0, dword [edi + 0x84]
subss xmm0, dword [edi + 0x80]
comiss xmm4, xmm0
jbe 0x1017633f
addss xmm0, xmm1
jmp 0x10176348
comiss xmm0, xmm3
jbe 0x10176348
subss xmm0, xmm1
call fcn.1000deb0
divss xmm0, xmm6
comiss xmm0, dword [0x102bd9dc]
jbe 0x101763b1
push 4
mov ecx, edi
call fcn.10173bf0
mov esi, dword [ebp - 0x1c]
mov edx, eax
cmp edx, 2
jl 0x101763a8
mov ecx, dword [esi + 0x30]
test ecx, ecx
je 0x101763a8
mov dword [esi + 0x18], edx
mov eax, dword [ecx]
push edx
push esi
mov eax, dword [eax + 0x37c]
mov dword [ebp - 0x44], eax
call dword [ebp - 0x44]
movss xmm4, dword [0x102bdb98]
xorps xmm2, xmm2
movss xmm5, dword [ebp - 0x20]
fstp dword [esi + 0x28]
mov dword [esi + 0x2c], 0
mov dword [esi + 0x20], 0
mov byte [edi + 0x138], 1
jmp 0x101763b4
mov esi, dword [ebp - 0x1c]
movss xmm3, dword [esi + 0x20]
comiss xmm3, xmm2
jbe 0x10176487
movss xmm1, dword [esi + 0x28]
movaps xmm0, xmm1
call fcn.1000deb0
comiss xmm2, xmm0
jae 0x10176413
mulss xmm1, dword [edi + 0x74]
addss xmm1, dword [esi + 0x2c]
comiss xmm1, xmm5
jb 0x101763eb
movss xmm1, dword [0x102bd7a4]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm2, xmm1
jbe 0x10176405
addss xmm1, xmm5
jmp 0x1017640e
comiss xmm1, xmm5
jbe 0x1017640e
subss xmm1, xmm5
movss dword [esi + 0x2c], xmm1
movss xmm1, dword [esi + 0x24]
movaps xmm0, xmm1
call fcn.1000deb0
comiss xmm2, xmm0
jae 0x10176487
mulss xmm1, dword [edi + 0x74]
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x3c], 0x3f800000
mov dword [ebp - 0x44], 0
addss xmm1, xmm3
comiss xmm1, xmm2
movss dword [ebp - 0x40], xmm1
cmovae ecx, eax
lea eax, [ebp - 0x3c]
comiss xmm5, xmm1
cmovae eax, ecx
lea ecx, [ebp - 0x44]
movss xmm0, dword [eax]
lea eax, [ebp - 0x40]
comiss xmm0, xmm2
mov dword [ebp - 0x3c], 0x3f800000
mov dword [ebp - 0x44], 0
movss dword [ebp - 0x40], xmm0
cmovae ecx, eax
lea eax, [ebp - 0x3c]
comiss xmm5, xmm0
cmovae eax, ecx
mov eax, dword [eax]
mov dword [esi + 0x20], eax
movss xmm0, dword [edi + 0xec]
comiss xmm0, xmm2
movss xmm3, dword [0x102bda24]
jbe 0x10176551
cmp byte [edi + 0x108], 0
je 0x10176551
movss xmm0, dword [edi + 0xcc]
xorps xmm0, xmmword [0x102bdf90]
movss dword [ebp - 0x44], xmm0
movss xmm0, dword [edi + 0xc8]
xorps xmm0, xmmword [0x102bdf90]
fld dword [ebp - 0x44]
movss dword [ebp - 0x44], xmm0
fld dword [ebp - 0x44]
fpatan
movss xmm1, dword [0x102bda6c]
fstp dword [ebp - 0x44]
movss xmm0, dword [ebp - 0x44]
mulss xmm0, xmm3
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [0x102bd7d0]
cvtpd2ps xmm0, xmm0
comiss xmm2, xmm0
jbe 0x10176509
addss xmm0, xmm1
subss xmm0, dword [edi + 0x80]
comiss xmm4, xmm0
jbe 0x1017651c
addss xmm0, xmm1
jmp 0x10176525
comiss xmm0, xmm3
jbe 0x10176525
subss xmm0, xmm1
comiss xmm4, xmm0
jbe 0x10176539
nop word [eax + eax]
addss xmm0, xmm1
comiss xmm4, xmm0
ja 0x10176530
comiss xmm0, xmm3
jbe 0x10176549
nop
subss xmm0, xmm1
comiss xmm0, xmm3
ja 0x10176540
movss dword [edi + 0x8c], xmm0
movss xmm0, dword [edi + 0x8c]
lea eax, [edi + 0x8c]
subss xmm0, dword [edi + 0x88]
movss xmm1, dword [0x102bda6c]
lea esi, [edi + 0x88]
comiss xmm4, xmm0
movss dword [ebp - 0x1c], xmm0
jbe 0x10176585
addss xmm0, xmm1
jmp 0x1017659a
comiss xmm0, xmm3
jbe 0x1017659f
subss xmm0, xmm1
lea eax, [edi + 0x8c]
lea esi, [edi + 0x88]
movss dword [ebp - 0x1c], xmm0
comiss xmm4, xmm0
jbe 0x101765be
addss xmm0, xmm1
comiss xmm4, xmm0
ja 0x101765a4
movss dword [ebp - 0x1c], xmm0
lea eax, [edi + 0x8c]
lea esi, [edi + 0x88]
comiss xmm0, xmm3
jbe 0x101765dd
subss xmm0, xmm1
comiss xmm0, xmm3
ja 0x101765c3
movss dword [ebp - 0x1c], xmm0
lea eax, [edi + 0x8c]
lea esi, [edi + 0x88]
cmp byte [ebp - 0x11], 0
mov ecx, dword [ebp - 0x18]
movss dword [edi + 0x90], xmm0
mov ecx, dword [ecx + 0x2990]
je 0x1017680f
comiss xmm2, dword [edi + 0x9c]
jb 0x1017680f
movss xmm2, dword [edi + 0x8c]
movss dword [edi + 0x88], xmm2
mov esi, dword [ecx + 0x168]
cmp esi, 0xffffffff
je 0x10176918
mov ecx, dword [ebp - 0x24]
lea eax, [ecx + 4]
test eax, eax
je 0x10176650
mov eax, dword [0x103bfc8c]
push esi
call eax
movss xmm2, dword [edi + 0x88]
movss xmm3, dword [0x102bda24]
movss xmm4, dword [0x102bdb98]
jmp 0x10176668
mov ecx, dword [ecx]
cmp esi, dword [ecx + 0xbc]
jle 0x1017665e
xor eax, eax
jmp 0x10176668
mov eax, dword [ecx + 0xc0]
add eax, ecx
add eax, esi
cmp dword [eax + 0xc4], 0
jle 0x10176918
movss xmm1, dword [0x102bda6c]
movaps xmm0, xmm2
subss xmm0, xmm3
comiss xmm4, xmm0
jbe 0x1017668f
addss xmm0, xmm1
jmp 0x10176698
comiss xmm0, xmm3
jbe 0x10176698
subss xmm0, xmm1
call fcn.1000deb0
movss xmm5, dword [0x102bd8dc]
comiss xmm5, xmm0
jb 0x101766b1
push 1
jmp 0x101767f5
movaps xmm0, xmm2
subss xmm0, dword [0x102bd9f0]
comiss xmm4, xmm0
jbe 0x101766c7
addss xmm0, xmm1
jmp 0x101766d0
comiss xmm0, xmm3
jbe 0x101766d0
subss xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jb 0x101766e1
push 2
jmp 0x101767f5
movaps xmm0, xmm2
subss xmm0, dword [0x102bd9b4]
comiss xmm4, xmm0
jbe 0x101766f7
addss xmm0, xmm1
jmp 0x10176700
comiss xmm0, xmm3
jbe 0x10176700
subss xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jb 0x10176711
push 3
jmp 0x101767f5
movaps xmm0, xmm2
subss xmm0, dword [0x102bd948]
comiss xmm4, xmm0
jbe 0x10176727
addss xmm0, xmm1
jmp 0x10176730
comiss xmm0, xmm3
jbe 0x10176730
subss xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jb 0x10176741
push 4
jmp 0x101767f5
comiss xmm4, xmm2
movaps xmm0, xmm2
jbe 0x1017674f
addss xmm0, xmm1
jmp 0x1017675b
comiss xmm2, xmm3
jbe 0x1017675b
movaps xmm0, xmm2
subss xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jb 0x1017676c
push 5
jmp 0x101767f5
movaps xmm0, xmm2
subss xmm0, dword [0x102bdb78]
comiss xmm4, xmm0
jbe 0x10176782
addss xmm0, xmm1
jmp 0x1017678b
comiss xmm0, xmm3
jbe 0x1017678b
subss xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jb 0x10176799
push 6
jmp 0x101767f5
movaps xmm0, xmm2
subss xmm0, dword [0x102bdb8c]
comiss xmm4, xmm0
jbe 0x101767af
addss xmm0, xmm1
jmp 0x101767b8
comiss xmm0, xmm3
jbe 0x101767b8
subss xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jb 0x101767c6
push 7
jmp 0x101767f5
subss xmm2, dword [0x102bdb94]
comiss xmm4, xmm2
jbe 0x101767d9
addss xmm2, xmm1
jmp 0x101767e2
comiss xmm2, xmm3
jbe 0x101767e2
subss xmm2, xmm1
movaps xmm0, xmm2
call fcn.1000deb0
comiss xmm5, xmm0
jb 0x10176918
push 8
mov ecx, dword [ebp - 0x24]
mov edx, esi
call fcn.10174df0
add esp, 4
movss dword [edi + 0x98], xmm0
jmp 0x10176918
movss xmm0, dword [ecx + 0x1a8]
comiss xmm0, xmm5
jb 0x10176825
mov eax, dword [eax]
mov dword [esi], eax
jmp 0x10176918
movss xmm1, dword [edi + 0xfc]
lea eax, [edi + 0xfc]
movss xmm0, dword [edi + 0xf8]
lea edx, [ebp - 0x44]
comiss xmm1, xmm2
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x3c], 0x3f800000
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x38], 0x3f800000
mov dword [ebp - 0x44], 0
cmovae edx, eax
lea eax, [edi + 0xf8]
comiss xmm0, xmm2
cmovae ecx, eax
lea eax, [ebp - 0x3c]
comiss xmm5, xmm0
cmovae eax, ecx
comiss xmm5, xmm1
movss xmm0, dword [eax]
lea eax, [ebp - 0x38]
cmovae eax, edx
movss xmm2, dword [eax]
subss xmm2, xmm0
mulss xmm2, dword [edi + 0xa4]
addss xmm2, xmm0
movss xmm0, dword [edi + 0x348]
ucomiss xmm0, dword [0x102bd6e0]
lahf
test ah, 0x44
jnp 0x101768b8
mov dword [edi + 0x34c], 0x401e5507
movss xmm1, dword [edi + 0x34c]
movaps xmm0, xmm2
call fcn.1002f3b0
movss xmm2, dword [0x102bdb98]
movaps xmm1, xmm0
addss xmm1, dword [0x102bd6b4]
movss xmm0, dword [0x102bda6c]
mulss xmm1, dword [ebp - 0x1c]
addss xmm1, dword [esi]
comiss xmm2, xmm1
jbe 0x101768fa
addss xmm1, xmm0
comiss xmm2, xmm1
ja 0x101768f1
movss xmm2, dword [0x102bda24]
comiss xmm1, xmm2
jbe 0x10176910
subss xmm1, xmm0
comiss xmm1, xmm2
ja 0x10176907
movss dword [edi + 0x88], xmm1
mov esi, dword [ebp - 0x18]
lea ecx, [edi + 0x1e0]
movss xmm2, dword [edi + 0x88]
push esi
call fcn.10173780
movss xmm2, dword [edi + 0x78]
subss xmm2, dword [edi + 0x80]
movss xmm0, dword [0x102bdb98]
comiss xmm0, xmm2
jbe 0x10176953
addss xmm2, dword [0x102bda6c]
jmp 0x10176964
comiss xmm2, dword [0x102bda24]
jbe 0x10176964
subss xmm2, dword [0x102bda6c]
xorps xmm0, xmm0
comiss xmm2, xmm0
jb 0x1017698b
movss xmm1, dword [edi + 0x338]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x1017698b
divss xmm2, xmm1
mulss xmm2, dword [0x102bd97c]
jmp 0x101769a8
movss xmm1, dword [edi + 0x334]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x101769a8
divss xmm2, xmm1
mulss xmm2, dword [0x102bdb84]
push esi
lea ecx, [edi + 0x1f8]
call fcn.10173780
movss xmm2, dword [edi + 0x7c]
movss xmm0, dword [0x102bdb98]
comiss xmm0, xmm2
jbe 0x101769d0
addss xmm2, dword [0x102bda6c]
jmp 0x101769e1
comiss xmm2, dword [0x102bda24]
jbe 0x101769e1
subss xmm2, dword [0x102bda6c]
comiss xmm2, dword [0x102bd5e4]
jbe 0x101769fc
divss xmm2, dword [edi + 0x340]
mulss xmm2, dword [0x102bd9b4]
jmp 0x10176a0c
divss xmm2, dword [edi + 0x33c]
mulss xmm2, dword [0x102bdb8c]
push esi
lea ecx, [edi + 0x204]
call fcn.10173780
movss xmm2, dword [edi + 0xf8]
lea ecx, [edi + 0x1bc]
push esi
call fcn.10173780
movss xmm0, dword [edi + 0x124]
lea ecx, [edi + 0x21c]
mulss xmm0, dword [edi + 0xa4]
push esi
movss xmm2, dword [ebp - 0x20]
subss xmm2, xmm0
call fcn.10173780
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4