Function at 0x1014d4e0
Capabilities:
Encode data using xor
Hash data using fnv

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 0x101cc60b
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x38
push esi
push edi
mov eax, dword [0x10203360]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebx + 8]
mov esi, dword [eax + 0x60]
mov eax, dword [0x105cbfc0]
mov dword [ebp - 0x18], esi
test eax, eax
je 0x1014d530
add eax, 2
mov eax, dword [eax]
mov eax, dword [eax + esi + 4]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1014f000
mov eax, dword [0x105cbfb0]
add eax, 0x4fd8cdb0
xor eax, 0x91d5c6d7
mov eax, dword [eax + 0xc8]
mov dword [ebp - 0x34], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x30], eax
mov eax, dword [0x1029e3ac]
test al, 1
jne 0x1014d6c5
or eax, 1
mov dword [0x1029e3ac], eax
mov dword [ebp - 4], 0
mov eax, dword [0x1029b360]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
je 0x1014d5da
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1014d5cc
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014d5a3
xor edx, edx
test ecx, ecx
je 0x1014d5cc
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014d5b0
cmp esi, 0x4e9f1122
je 0x1014d5f0
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
jne 0x1014d590
mov esi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x1029cb50], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d6ca
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x1014d698
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1014d644
cmp dword [ecx + 4], 0
jle 0x1014d644
push 0
mov edx, 0x940131c5
call fcn.101146e0
add esp, 4
test eax, eax
je 0x1014d641
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014d650
xor edx, edx
test ecx, ecx
je 0x1014d67c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014d660
cmp esi, 0x940131c5
je 0x1014d6ab
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1014d610
mov esi, dword [ebp - 0x18]
mov eax, edi
mov dword [0x1029cb50], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d6ca
mov eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x1029cb50], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d6ca
mov eax, dword [0x1029cb50]
push dword [eax + esi]
mov ecx, dword [ebp - 0x34]
call dword [ebp - 0x30]
mov dword [ebp - 0x34], eax
test eax, eax
je 0x1014f000
mov ecx, dword [0x105cbfb0]
add ecx, 0x4fd8cdb0
xor ecx, 0x91d5c6d7
mov eax, dword [ecx + 0x10c]
mov dword [ebp - 0x30], eax
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x3c], eax
mov eax, dword [0x1029cb78]
test al, 1
jne 0x1014d865
or eax, 1
mov dword [0x1029cb78], eax
mov dword [ebp - 4], 1
mov eax, dword [0x1029b360]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
je 0x1014d77a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x1014d76c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014d743
xor edx, edx
test ecx, ecx
je 0x1014d76c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014d750
cmp esi, 0xcd2ed041
je 0x1014d790
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
jne 0x1014d730
mov esi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x1029e41c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d86a
mov eax, dword [ebp - 0x24]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x1014d838
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1014d7e4
cmp dword [ecx + 4], 0
jle 0x1014d7e4
push 0
mov edx, 0xa2ccb41a
call fcn.101146e0
add esp, 4
test eax, eax
je 0x1014d7e1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x24]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014d7f0
xor edx, edx
test ecx, ecx
je 0x1014d81c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014d800
cmp esi, 0xa2ccb41a
je 0x1014d84b
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1014d7b0
mov esi, dword [ebp - 0x18]
mov eax, edi
mov dword [0x1029e41c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d86a
mov eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x1029e41c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d86a
mov eax, dword [0x1029e41c]
mov ecx, dword [ebp - 0x34]
movsx eax, word [eax + ecx]
mov ecx, dword [ebp - 0x30]
push eax
call dword [ebp - 0x3c]
mov dword [ebp - 0x38], eax
test eax, eax
je 0x1014da1b
mov ecx, dword [0x1029cb88]
movss xmm0, dword [0x101f06cc]
mov dword [ebp - 0x34], 0x3a83126f
test cl, 1
jne 0x1014d9f5
or ecx, 1
mov dword [0x1029cb88], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x1029b360]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
je 0x1014d90b
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x1014d8fd
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014d8d4
xor edx, edx
test ecx, ecx
je 0x1014d8fd
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014d8e1
cmp esi, 0x72e242a1
je 0x1014d921
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
jne 0x1014d8c1
mov esi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x1029e400], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d9fa
mov eax, dword [ebp - 0x24]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x1014d9c8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x3c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1014d974
cmp dword [ecx + 4], 0
jle 0x1014d974
push 0
mov edx, 0xf3e9a9ed
call fcn.101146e0
add esp, 4
test eax, eax
je 0x1014d971
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x24]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014d980
xor edx, edx
test ecx, ecx
je 0x1014d9ac
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014d990
cmp esi, 0xf3e9a9ed
je 0x1014d9db
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1014d940
mov esi, dword [ebp - 0x18]
mov eax, edi
mov dword [0x1029e400], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d9fa
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x1029e400], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1014d9fa
mov eax, dword [0x1029e400]
xor ecx, ecx
cmp byte [eax + esi], cl
lea eax, [ebp - 0x34]
setne cl
lea ecx, [ecx*4 + 0x12c]
add ecx, dword [ebp - 0x38]
comiss xmm0, dword [ecx]
cmovbe eax, ecx
movss xmm0, dword [eax]
jmp 0x1014da23
movss xmm0, dword [0x101f0aa0]
mov eax, dword [0x1029cb5c]
movss dword [ebp - 0x30], xmm0
test al, 1
jne 0x1014db6b
or eax, 1
mov dword [0x1029cb5c], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1029b360]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
je 0x1014da9e
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x1014da90
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014da67
xor edx, edx
test ecx, ecx
je 0x1014da90
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014da74
cmp esi, 0x4e9f1122
je 0x1014dab5
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1029b364]
jne 0x1014da54
xor edi, edi
mov esi, dword [ebp - 0x18]
mov dword [0x1029e3c4], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1014db71
mov eax, dword [ebp - 0x24]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x1014daa0
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x3c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1014db04
cmp dword [ecx + 4], 0
jle 0x1014db04
push 0
mov edx, 0x53630d14
call fcn.101146e0
add esp, 4
test eax, eax
je 0x1014db01
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x24]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1014db10
xor edx, edx
test ecx, ecx
je 0x1014db3c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1014db20
cmp esi, 0x53630d14
je 0x1014db5d
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jge 0x1014daa0
jmp 0x1014dad0
mov eax, dword [ebp - 0x3c]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x1c]
jmp 0x1014daa0
mov edi, dword [0x1029e3c4]
movss xmm3, dword [edi + esi]
movss xmm4, dword [edi + esi + 4]
movaps xmm6, xmm3
mov eax, dword [edi + esi + 8]
movaps xmm7, xmm4
mov edi, dword [ebx + 8]
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
movaps xmm1, xmm4
mulss xmm1, xmm4
addss xmm2, xmm0
movaps xmm0, xmm3
mulss xmm0, xmm3
addss xmm1, xmm0
movss xmm0, dword [edi + 0x74]
movaps xmm5, xmm0
movss dword [ebp - 0x2c], xmm0
mulss xmm5, dword [0x101f0b08]
comiss xmm1, xmm2
seta al
mov byte [edi + 0x1ad], al
subss xmm6, dword [edi + 0xc8]
subss xmm7, dword [edi + 0xcc]
movss xmm2, dword [edi + 0xd0]
xorps xmm2, xmmword [0x101f12d0]
movss dword [ebp - 0x3c], xmm2
movaps xmm1, xmm6
movaps xmm0, xmm7
mulss xmm1, xmm6
mulss xmm0, xmm7
addss xmm0, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm2
addss xmm0, xmm1
call fcn.1000cb10
movaps xmm1, xmm0
comiss xmm1, xmm5
jbe 0x1014dc88
addss xmm1, dword [0x101f069c]
movss xmm0, dword [0x101f0824]
divss xmm0, xmm1
movaps xmm3, xmm0
movaps xmm4, xmm0
mulss xmm3, xmm6
mulss xmm4, xmm7
mulss xmm0, xmm2
mulss xmm3, xmm5
mulss xmm4, xmm5
addss xmm3, dword [edi + 0xc8]
mulss xmm0, xmm5
addss xmm4, dword [edi + 0xcc]
addss xmm0, dword [edi + 0xd0]
jmp 0x1014dcf3
movaps xmm0, xmm5
xorps xmm0, xmmword [0x101f12d0]
comiss xmm0, xmm1
jbe 0x1014dcf0
addss xmm1, dword [0x101f069c]
movss xmm2, dword [0x101f0824]
movss xmm4, dword [edi + 0xcc]
movss xmm3, dword [edi + 0xc8]
divss xmm2, xmm1
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm2, dword [ebp - 0x3c]
mulss xmm0, xmm7
mulss xmm1, xmm6
mulss xmm0, xmm5
mulss xmm1, xmm5
mulss xmm2, xmm5
subss xmm4, xmm0
movss xmm0, dword [edi + 0xd0]
subss xmm3, xmm1
subss xmm0, xmm2
jmp 0x1014dcf3
xorps xmm0, xmm0
movss dword [ebp - 0x40], xmm0
mov eax, dword [ebp - 0x40]
unpcklps xmm3, xmm4
movq qword [edi + 0xc8], xmm3
mov dword [edi + 0xd0], eax
movss xmm5, dword [edi + 0xc8]
movss xmm3, dword [edi + 0xcc]
movaps xmm4, xmm5
movss xmm2, dword [edi + 0xd0]
movaps xmm0, xmm3
mulss xmm0, xmm3
movaps xmm1, xmm2
mulss xmm4, xmm5
mulss xmm1, xmm2
addss xmm0, xmm4
addss xmm0, xmm1
call fcn.1000cb10
addss xmm0, dword [0x101f069c]
movss xmm6, dword [0x101f0824]
movaps xmm1, xmm6
divss xmm1, xmm0
mulss xmm5, xmm1
mulss xmm3, xmm1
mulss xmm2, xmm1
unpcklps xmm5, xmm3
movq qword [edi + 0xd4], xmm5
movss dword [ebp - 0x40], xmm2
mov eax, dword [ebp - 0x40]
mov dword [edi + 0xdc], eax
movss xmm0, dword [edi + 0xcc]
movss xmm1, dword [edi + 0xd0]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm4
addss xmm0, xmm1
call fcn.1000cb10
movaps xmm4, xmm0
xorps xmm2, xmm2
minss xmm4, dword [0x101f0aa0]
comiss xmm4, xmm2
movss dword [edi + 0xec], xmm4
jbe 0x1014ddd0
movq qword [edi + 0xe0], xmm5
mov dword [edi + 0xe8], eax
movss xmm3, dword [ebp - 0x30]
lea ecx, [ebp - 0x38]
movaps xmm0, xmm4
movss xmm1, dword [0x101f0868]
divss xmm0, xmm3
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x34], 0x3f800000
mov dword [ebp - 0x3c], 0
divss xmm1, xmm3
comiss xmm2, xmm0
movss dword [ebp - 0x38], xmm0
mulss xmm1, xmm4
seta al
test al, al
cmove edx, ecx
movss dword [edi + 0xf8], xmm1
comiss xmm0, xmm6
lea ecx, [ebp - 0x34]
movss xmm0, dword [0x101f08b0]
divss xmm0, xmm3
seta al
test al, al
cmove ecx, edx
mov eax, dword [ecx]
mov dword [edi + 0xf4], eax
lea eax, [edi + 0xfc]
mov dword [ebp - 0x28], eax
comiss xmm1, xmm6
mulss xmm0, xmm4
movss dword [eax], xmm0
movss xmm0, dword [0x101f07bc]
jb 0x1014de9e
movss dword [edi + 0x2a4], xmm4
movss xmm6, dword [ebp - 0x2c]
xor al, al
mov byte [ebp - 0x11], 0
comiss xmm4, xmm2
jbe 0x1014df16
movss xmm0, dword [edi + 0x100]
comiss xmm2, xmm0
mov dword [edi + 0x104], 0
addss xmm0, xmm6
setae byte [ebp - 0x11]
movss dword [edi + 0x100], xmm0
jmp 0x1014df3a
comiss xmm0, xmm1
jbe 0x1014de60
movss xmm5, dword [0x101f0a00]
movss xmm6, dword [edi + 0x74]
movaps xmm3, xmm5
movss xmm1, dword [edi + 0x2a4]
movaps xmm2, xmm6
mulss xmm2, dword [0x101f09d4]
subss xmm3, xmm1
comiss xmm3, xmm2
jbe 0x1014dee0
addss xmm1, xmm2
xorps xmm2, xmm2
movss dword [edi + 0x2a4], xmm1
jmp 0x1014de65
movaps xmm0, xmm2
xorps xmm0, xmmword [0x101f12d0]
comiss xmm0, xmm3
jbe 0x1014df03
subss xmm1, xmm2
xorps xmm2, xmm2
movss dword [edi + 0x2a4], xmm1
jmp 0x1014de65
movaps xmm1, xmm5
xorps xmm2, xmm2
movss dword [edi + 0x2a4], xmm1
jmp 0x1014de65
movss xmm0, dword [edi + 0x104]
comiss xmm2, xmm0
mov dword [edi + 0x100], 0
addss xmm0, xmm6
setae al
movss dword [edi + 0x104], xmm0
cmp byte [edi + 0x138], 0
mov esi, dword [esi + 0x2970]
mov dword [ebp - 0x1c], esi
jne 0x1014dfdb
test al, al
je 0x1014dfdb
cmp byte [edi + 0x108], 0
je 0x1014dfdb
cmp byte [edi + 0x128], 0
jne 0x1014dfdb
cmp byte [edi + 0x109], 0
jne 0x1014dfdb
movss xmm0, dword [0x101f09b0]
comiss xmm0, dword [edi + 0x2ac]
jbe 0x1014dfdb
push 5
mov ecx, edi
call fcn.1014c3a0
mov edx, eax
cmp edx, 2
jl 0x1014dfd4
mov ecx, dword [esi + 0xd8]
test ecx, ecx
je 0x1014dfd4
mov dword [esi + 0xc0], edx
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 0x364]
mov dword [ebp - 0x3c], eax
lea eax, [esi + 0xa8]
push eax
call dword [ebp - 0x3c]
fstp dword [esi + 0xd0]
mov dword [esi + 0xd4], 0
mov dword [esi + 0xc8], 0
mov byte [edi + 0x138], 1
mov eax, dword [esi + 0xc0]
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x3c], eax
add ecx, 4
mov eax, dword [0x105cbfb0]
add eax, 0x4fd8cdb0
xor eax, 0x91d5c6d7
mov esi, dword [eax + 0xec]
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 + 0x78]
call edx
test eax, eax
je 0x1014e354
push dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x18]
mov edx, eax
mov esi, dword [0x102b2f40]
call esi
cmp eax, 0x3d4
je 0x1014e041
cmp eax, 0x3d3
jne 0x1014e354
cmp byte [edi + 0x138], 0
je 0x1014e2a2
movss xmm0, dword [0x101f0774]
comiss xmm0, dword [edi + 0xfc]
jb 0x1014e2a2
mov esi, dword [ebp - 0x1c]
movss xmm1, dword [esi + 0xd0]
movss xmm2, dword [esi + 0xc8]
movaps xmm0, xmm1
movss dword [ebp - 0x30], xmm2
call fcn.1000caf0
movss xmm4, dword [0x101f0824]
xorps xmm3, xmm3
comiss xmm3, xmm0
jae 0x1014e0d8
mulss xmm1, dword [edi + 0x74]
addss xmm1, dword [esi + 0xd4]
comiss xmm1, xmm4
jb 0x1014e0ad
movss xmm1, dword [0x101f081c]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm3, xmm1
jbe 0x1014e0c7
addss xmm1, xmm4
jmp 0x1014e0d0
comiss xmm1, xmm4
jbe 0x1014e0d0
subss xmm1, xmm4
movss dword [esi + 0xd4], xmm1
mov eax, dword [0x105cbfc0]
mov ecx, dword [edi + 0x60]
test eax, eax
je 0x1014e0e7
add eax, 2
mov eax, dword [eax]
mov ecx, dword [eax + ecx + 4]
test ecx, ecx
jne 0x1014e0f9
xorps xmm0, xmm0
jmp 0x1014e21f
mov edx, dword [esi + 0xc0]
lea eax, [ecx + 4]
test eax, eax
je 0x1014e113
mov eax, dword [0x102b2de8]
push edx
call eax
xorps xmm3, xmm3
jmp 0x1014e12b
mov ecx, dword [ecx]
cmp edx, dword [ecx + 0xbc]
jle 0x1014e121
xor eax, eax
jmp 0x1014e12b
mov eax, dword [ecx + 0xc0]
add eax, ecx
add eax, edx
movss xmm0, dword [esi + 0xd4]
comiss xmm0, dword [0x101f081c]
movss xmm4, dword [0x101f0824]
jb 0x1014e147
movaps xmm0, xmm4
movss xmm2, dword [eax + 0x68]
comiss xmm2, xmm3
mov dword [ebp - 0x24], 0
movss xmm1, dword [eax + 0x6c]
jbe 0x1014e168
comiss xmm2, xmm0
jbe 0x1014e168
divss xmm0, xmm2
jmp 0x1014e181
comiss xmm4, xmm1
xorps xmm2, xmm2
jbe 0x1014e1d7
comiss xmm0, xmm1
jbe 0x1014e1d7
subss xmm0, xmm4
subss xmm1, xmm4
divss xmm0, xmm1
comiss xmm3, xmm0
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x3f800000
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
movss xmm2, dword [0x101f08b4]
movss dword [ebp - 0x38], xmm0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x34]
comiss xmm0, xmm4
seta al
test al, al
cmove ecx, edx
movss xmm1, dword [ecx]
movaps xmm0, xmm1
addss xmm0, xmm1
mulss xmm1, xmm1
subss xmm2, xmm0
mulss xmm2, xmm1
movss dword [ebp - 0x24], xmm2
movss xmm0, dword [0x101f06d4]
comiss xmm0, xmm2
jbe 0x1014e1e9
xorps xmm0, xmm0
jmp 0x1014e21a
comiss xmm3, xmm2
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x38], 0x3f800000
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x38]
comiss xmm2, xmm4
seta al
test al, al
cmove ecx, edx
movss xmm0, dword [ecx]
movss xmm2, dword [ebp - 0x30]
comiss xmm3, xmm0
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x3f800000
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
movss dword [ebp - 0x38], xmm0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x34]
comiss xmm0, xmm4
seta al
test al, al
lea eax, [esi + 0xa8]
cmove ecx, edx
movss xmm0, dword [ecx]
movss dword [esi + 0xc8], xmm0
test eax, eax
je 0x1014e278
subss xmm0, xmm2
divss xmm0, dword [edi + 0x74]
movss dword [esi + 0xcc], xmm0
movss xmm0, dword [esi + 0xd0]
mov eax, esi
mulss xmm0, dword [edi + 0x74]
mov ecx, 0xd4
addss xmm0, dword [eax + ecx]
comiss xmm0, xmm4
setb al
mov byte [edi + 0x138], al
jmp 0x1014e354
mov esi, dword [ebp - 0x1c]
movss xmm1, dword [edi + 0x74]
mulss xmm1, dword [0x101f08e0]
mov byte [edi + 0x138], 0
movss xmm3, dword [esi + 0xc8]
movss xmm4, dword [0x101f12d0]
movaps xmm2, xmm3
xorps xmm2, xmm4
comiss xmm2, xmm1
jbe 0x1014e2da
addss xmm1, xmm3
jmp 0x1014e2f4
movaps xmm0, xmm1
xorps xmm0, xmm4
comiss xmm0, xmm2
jbe 0x1014e2f1
movaps xmm0, xmm3
subss xmm0, xmm1
movaps xmm1, xmm0
jmp 0x1014e2f4
xorps xmm1, xmm1
xorps xmm6, xmm6
movss dword [ebp - 0x38], xmm1
comiss xmm6, xmm1
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x3f800000
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x34]
comiss xmm1, dword [0x101f0824]
seta al
test al, al
lea eax, [esi + 0xa8]
cmove ecx, edx
movss xmm0, dword [ecx]
movss dword [esi + 0xc8], xmm0
test eax, eax
je 0x1014e354
subss xmm0, xmm3
divss xmm0, dword [edi + 0x74]
movss dword [esi + 0xcc], xmm0
movss xmm1, dword [edi + 0x80]
lea esi, [edi + 0x80]
movss xmm0, dword [0x101f0be8]
lea edx, [ebp - 0x3c]
movss xmm2, dword [0x101f0ab4]
lea ecx, [ebp - 0x38]
comiss xmm0, xmm1
mov dword [ebp - 0x38], 0x43b40000
mov dword [ebp - 0x3c], 0xc3b40000
movss xmm7, dword [edi + 0x78]
movss xmm6, dword [0x101f0be0]
movaps xmm5, xmm7
seta al
movss xmm4, dword [0x101f0a6c]
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 xmm5, xmm3
movss dword [esi], xmm3
comiss xmm6, xmm5
jbe 0x1014e3d3
addss xmm5, xmm2
jmp 0x1014e3dc
comiss xmm5, xmm4
jbe 0x1014e3dc
subss xmm5, xmm2
movss xmm0, dword [edi + 0xf8]
lea ecx, [ebp - 0x38]
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x3c]
xorps xmm6, xmm6
movss dword [ebp - 0x38], xmm0
comiss xmm6, xmm0
mov dword [ebp - 0x34], 0x3f800000
mov dword [ebp - 0x3c], 0
movss xmm1, dword [eax]
movss dword [ebp - 0x30], xmm1
movss xmm1, dword [edi + 0x11c]
seta al
mulss xmm1, dword [0x101f077c]
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x34]
comiss xmm0, dword [0x101f0824]
addss xmm1, dword [0x101f0768]
movss xmm0, dword [0x101f0824]
seta al
test al, al
cmove ecx, edx
mulss xmm1, dword [ecx]
subss xmm0, xmm1
movss xmm1, dword [edi + 0xa4]
comiss xmm1, xmm6
movss xmm6, dword [0x101f0be0]
jbe 0x1014e4c6
xorps xmm6, xmm6
mov dword [ebp - 0x38], 0x3f800000
comiss xmm6, dword [edi + 0xfc]
lea edx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
movss xmm6, dword [edi + 0xfc]
seta al
test al, al
lea eax, [ebp - 0x30]
cmove edx, eax
comiss xmm6, dword [0x101f0824]
movss xmm6, dword [0x101f07bc]
subss xmm6, xmm0
seta al
test al, al
cmove ecx, edx
mulss xmm1, dword [ecx]
mulss xmm6, xmm1
addss xmm0, xmm6
movss xmm6, dword [0x101f0be0]
movaps xmm1, xmm0
mulss xmm0, dword [edi + 0x330]
mulss xmm1, dword [edi + 0x334]
comiss xmm5, xmm1
jbe 0x1014e4f3
movaps xmm0, xmm1
call fcn.1000caf0
subss xmm7, xmm0
movss dword [esi], xmm7
movaps xmm3, xmm7
jmp 0x1014e508
comiss xmm0, xmm5
jbe 0x1014e508
call fcn.1000caf0
movaps xmm3, xmm0
addss xmm3, xmm7
movss dword [esi], xmm3
comiss xmm6, xmm3
jbe 0x1014e519
nop dword [eax]
addss xmm3, xmm2
comiss xmm6, xmm3
ja 0x1014e510
comiss xmm3, xmm4
jbe 0x1014e529
nop
subss xmm3, xmm2
comiss xmm3, xmm4
ja 0x1014e520
mov ecx, dword [ebp - 0x18]
add ecx, 8
movss dword [esi], xmm3
mov eax, dword [ecx]
call dword [eax + 0x28]
cmp byte [edi + 0x108], 0
je 0x1014e85f
movss xmm0, dword [edi + 0xec]
comiss xmm0, dword [0x101f0728]
movss xmm3, dword [edi + 0x74]
movss xmm2, dword [esi]
jbe 0x1014e63c
movss xmm0, dword [edi + 0x78]
xorps xmm7, xmm7
mulss xmm0, dword [0x101f0a70]
mulss xmm2, dword [0x101f0a70]
movss xmm4, dword [edi + 0x11c]
mulss xmm4, dword [0x101f0940]
cvttss2si eax, xmm0
addss xmm4, dword [0x101f0978]
movzx eax, ax
movd xmm6, eax
cvttss2si eax, xmm2
cvtdq2ps xmm6, xmm6
movzx eax, ax
movd xmm5, eax
mulss xmm6, dword [0x101f06e4]
cvtdq2ps xmm5, xmm5
mulss xmm4, xmm3
movaps xmm2, xmm6
mulss xmm5, dword [0x101f06e4]
comiss xmm7, xmm4
subss xmm2, xmm5
jbe 0x1014e5d6
xorps xmm4, xmmword [0x101f12d0]
movss xmm0, dword [0x101f0be0]
comiss xmm0, xmm2
movss xmm3, dword [0x101f0a6c]
movss xmm1, dword [0x101f0ab4]
jbe 0x1014e5f9
addss xmm2, xmm1
jmp 0x1014e602
comiss xmm2, xmm3
jbe 0x1014e602
subss xmm2, xmm1
comiss xmm2, xmm4
jbe 0x1014e614
addss xmm5, xmm4
movss dword [esi], xmm5
jmp 0x1014e872
movaps xmm0, xmm4
xorps xmm0, xmmword [0x101f12d0]
comiss xmm0, xmm2
jbe 0x1014e630
subss xmm5, xmm4
movss dword [esi], xmm5
jmp 0x1014e872
movaps xmm5, xmm6
movss dword [esi], xmm5
jmp 0x1014e872
mulss xmm3, dword [0x101f0a10]
mov eax, dword [0x1029cb48]
movss dword [ebp - 0x2c], xmm3
test al, 1
jne 0x1014e79b
or eax, 1
mov dword [0x1029cb48], eax
mov dword [ebp - 4], 4
mov eax, dword [0x1029b360]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1029b364]
je 0x1014e6c8
mov ecx, dword [eax]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1014e6ba
mov esi, dword [ecx + 0xc]
mov eax, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1014e688
xor edx, edx
test ecx, ecx
je 0x1014e6b7
mov edi, eax
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1014e697
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], 0x72e242a1
mov edi, dword [ebx + 8]
je 0x1014e6e1
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1029b364]
jne 0x1014e675
xor eax, eax
mov dword [0x1029e408], eax
lea esi, [edi + 0x80]
mov dword [ebp - 4], 0xffffffff
jmp 0x1014e7a0
mov eax, dword [ebp - 0x38]
xor edx, edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x30], edx
cmp dword [eax + 4], edx
jle 0x1014e786
xor ecx, ecx
mov dword [ebp - 0x34], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x3c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1014e72f
cmp dword [ecx + 4], 0
jle 0x1014e72f
push 0
mov edx, 0x9ef0d03e
call fcn.101146e0
add esp, 4
test eax, eax
je 0x1014e72f
mov ecx, dword [esi + 0x2c]
add ecx, eax
add dword [ebp - 0x24], ecx
mov esi, dword [esi]
mov eax, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1014e738
xor edx, edx
test ecx, ecx
je 0x1014e767
mov edi, eax
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1014e747
mov dword [ebp - 0x28], edi
cmp dword [ebp - 0x28], 0x9ef0d03e
mov edi, dword [ebx + 8]
je 0x1014e78d
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
inc edx
mov ecx, dword [ebp - 0x34]
add ecx, 0x3c
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jl 0x1014e700
mov edx, dword [ebp - 0x24]
mov eax, edx
jmp 0x1014e6ca
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
jmp 0x1014e6ca
mov eax, dword [0x1029e408]
mov ecx, dword [ebp - 0x18]
xorps xmm7, xmm7
comiss xmm7, xmm3
movss xmm0, dword [eax + ecx]
mulss xmm0, dword [0x101f0a70]
mulss xmm2, dword [0x101f0a70]
cvttss2si eax, xmm0
movzx eax, ax
movd xmm6, eax
cvttss2si eax, xmm2
cvtdq2ps xmm6, xmm6
movzx eax, ax
movd xmm5, eax
mulss xmm6, dword [0x101f06e4]
cvtdq2ps xmm5, xmm5
movaps xmm2, xmm6
mulss xmm5, dword [0x101f06e4]
subss xmm2, xmm5
jbe 0x1014e7ff
xorps xmm3, xmmword [0x101f12d0]
movss dword [ebp - 0x2c], xmm3
movss xmm4, dword [0x101f0be0]
comiss xmm4, xmm2
movss xmm3, dword [0x101f0a6c]
movss xmm1, dword [0x101f0ab4]
jbe 0x1014e822
addss xmm2, xmm1
jmp 0x1014e82b
comiss xmm2, xmm3
jbe 0x1014e82b
subss xmm2, xmm1
movss xmm0, dword [ebp - 0x2c]
comiss xmm2, xmm0
jbe 0x1014e83f
addss xmm5, xmm0
movss dword [esi], xmm5
jmp 0x1014e87a
xorps xmm0, xmmword [0x101f12d0]
comiss xmm0, xmm2
jbe 0x1014e856
subss xmm5, dword [ebp - 0x2c]
movss dword [esi], xmm5
jmp 0x1014e87a
movaps xmm5, xmm6
movss dword [esi], xmm5
jmp 0x1014e87a
movss xmm1, dword [0x101f0ab4]
xorps xmm7, xmm7
movss xmm3, dword [0x101f0a6c]
movss xmm4, dword [0x101f0be0]
movss xmm5, dword [0x101f0824]
comiss xmm5, dword [edi + 0xec]
jb 0x1014e965
cmp byte [edi + 0x108], 0
je 0x1014e965
cmp byte [edi + 0x128], 0
jne 0x1014e965
cmp byte [edi + 0x109], 0
jne 0x1014e965
movss xmm2, dword [edi + 0x74]
comiss xmm2, xmm7
jbe 0x1014e965
movss xmm0, dword [edi + 0x84]
subss xmm0, dword [esi]
comiss xmm4, xmm0
jbe 0x1014e8db
addss xmm0, xmm1
jmp 0x1014e8e4
comiss xmm0, xmm3
jbe 0x1014e8e4
subss xmm0, xmm1
call fcn.1000caf0
divss xmm0, xmm2
comiss xmm0, dword [0x101f0a24]
jbe 0x1014e965
push 4
mov ecx, edi
call fcn.1014c3a0
mov esi, dword [ebp - 0x1c]
mov edx, eax
cmp edx, 2
jl 0x1014e95c
mov ecx, dword [esi + 0xd8]
test ecx, ecx
je 0x1014e95c
mov dword [esi + 0xc0], edx
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 0x364]
mov dword [ebp - 0x3c], eax
lea eax, [esi + 0xa8]
push eax
call dword [ebp - 0x3c]
movss xmm4, dword [0x101f0be0]
xorps xmm7, xmm7
movss xmm5, dword [0x101f0824]
fstp dword [esi + 0xd0]
mov dword [esi + 0xd4], 0
mov dword [esi + 0xc8], 0
mov byte [edi + 0x138], 1
jmp 0x1014e968
mov esi, dword [ebp - 0x1c]
movss xmm2, dword [esi + 0xc8]
comiss xmm2, xmm7
jbe 0x1014ea4d
movss xmm1, dword [esi + 0xd0]
movaps xmm0, xmm1
call fcn.1000caf0
comiss xmm7, xmm0
jae 0x1014e9d3
mulss xmm1, dword [edi + 0x74]
addss xmm1, dword [esi + 0xd4]
comiss xmm1, xmm5
jb 0x1014e9a8
movss xmm1, dword [0x101f081c]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm7, xmm1
jbe 0x1014e9c2
addss xmm1, xmm5
jmp 0x1014e9cb
comiss xmm1, xmm5
jbe 0x1014e9cb
subss xmm1, xmm5
movss dword [esi + 0xd4], xmm1
movss xmm1, dword [esi + 0xcc]
movaps xmm0, xmm1
call fcn.1000caf0
comiss xmm7, xmm0
jae 0x1014ea4d
mulss xmm1, dword [edi + 0x74]
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x34], 0x3f800000
mov dword [ebp - 0x3c], 0
addss xmm1, xmm2
comiss xmm1, xmm7
movss dword [ebp - 0x38], xmm1
cmovae ecx, eax
lea eax, [ebp - 0x34]
comiss xmm5, xmm1
cmovae eax, ecx
lea ecx, [ebp - 0x3c]
movss xmm0, dword [eax]
lea eax, [ebp - 0x38]
comiss xmm0, xmm7
mov dword [ebp - 0x34], 0x3f800000
mov dword [ebp - 0x3c], 0
movss dword [ebp - 0x38], xmm0
cmovae ecx, eax
lea eax, [ebp - 0x34]
comiss xmm5, xmm0
cmovae eax, ecx
mov eax, dword [eax]
mov dword [esi + 0xc8], eax
movss xmm0, dword [edi + 0xec]
comiss xmm0, xmm7
jbe 0x1014eb03
cmp byte [edi + 0x108], 0
je 0x1014eb03
movss xmm1, dword [edi + 0xc8]
movss xmm0, dword [edi + 0xcc]
xorps xmm1, xmmword [0x101f12d0]
xorps xmm0, xmmword [0x101f12d0]
call fcn.100b1270
movss xmm3, dword [0x101f0a6c]
movss xmm1, dword [0x101f0ab4]
mulss xmm0, xmm3
cvtss2sd xmm0, xmm0
mulsd xmm0, qword [0x101f0848]
cvtsd2ss xmm0, xmm0
comiss xmm7, xmm0
jbe 0x1014eabb
addss xmm0, xmm1
subss xmm0, dword [edi + 0x80]
comiss xmm4, xmm0
jbe 0x1014eace
addss xmm0, xmm1
jmp 0x1014ead7
comiss xmm0, xmm3
jbe 0x1014ead7
subss xmm0, xmm1
comiss xmm4, xmm0
jbe 0x1014eae9
nop dword [eax]
addss xmm0, xmm1
comiss xmm4, xmm0
ja 0x1014eae0
comiss xmm0, xmm3
jbe 0x1014eaf9
nop
subss xmm0, xmm1
comiss xmm0, xmm3
ja 0x1014eaf0
movss dword [edi + 0x8c], xmm0
jmp 0x1014eb0b
movss xmm3, dword [0x101f0a6c]
movss xmm2, dword [edi + 0x8c]
movss xmm1, dword [0x101f0ab4]
movaps xmm0, xmm2
subss xmm0, dword [edi + 0x88]
comiss xmm4, xmm0
movss dword [ebp - 0x1c], xmm0
jbe 0x1014eb36
addss xmm0, xmm1
jmp 0x1014eb3f
comiss xmm0, xmm3
jbe 0x1014eb44
subss xmm0, xmm1
movss dword [ebp - 0x1c], xmm0
comiss xmm4, xmm0
jbe 0x1014eb5e
nop dword [eax]
addss xmm0, xmm1
comiss xmm4, xmm0
ja 0x1014eb50
movss dword [ebp - 0x1c], xmm0
comiss xmm0, xmm3
jbe 0x1014eb71
subss xmm0, xmm1
comiss xmm0, xmm3
ja 0x1014eb63
movss dword [ebp - 0x1c], xmm0
cmp byte [ebp - 0x11], 0
mov eax, dword [ebp - 0x18]
movss dword [edi + 0x90], xmm0
mov eax, dword [eax + 0x2970]
je 0x1014eddf
comiss xmm7, dword [edi + 0x9c]
jb 0x1014eddf
movss dword [edi + 0x88], xmm2
mov esi, dword [eax + 0x168]
cmp esi, 0xffffffff
je 0x1014ec49
mov ecx, dword [ebp - 0x20]
lea eax, [ecx + 4]
test eax, eax
je 0x1014ebdc
mov eax, dword [0x102b2de8]
push esi
call eax
movss xmm2, dword [edi + 0x88]
movss xmm3, dword [0x101f0a6c]
movss xmm4, dword [0x101f0be0]
jmp 0x1014ebf4
mov ecx, dword [ecx]
cmp esi, dword [ecx + 0xbc]
jle 0x1014ebea
xor eax, eax
jmp 0x1014ebf4
mov eax, dword [ecx + 0xc0]
add eax, ecx
add eax, esi
cmp dword [eax + 0xc4], 0
jle 0x1014ec49
movss xmm1, dword [0x101f0ab4]
movaps xmm0, xmm2
subss xmm0, xmm3
comiss xmm4, xmm0
jbe 0x1014ec17
addss xmm0, xmm1
jmp 0x1014ec20
comiss xmm0, xmm3
jbe 0x1014ec20
subss xmm0, xmm1
call fcn.1000caf0
movss xmm5, dword [0x101f0948]
comiss xmm5, xmm0
jb 0x1014ec90
push 1
mov ecx, dword [ebp - 0x20]
mov edx, esi
call fcn.1014d360
add esp, 4
movss dword [edi + 0x98], xmm0
lea esi, [edi + 0xf8]
push dword [ebp - 0x18]
movss xmm2, dword [edi + 0x88]
lea ecx, [edi + 0x1e0]
call fcn.1014bf30
movss xmm2, dword [edi + 0x78]
subss xmm2, dword [edi + 0x80]
movss xmm0, dword [0x101f0be0]
comiss xmm0, xmm2
jbe 0x1014eefc
addss xmm2, dword [0x101f0ab4]
jmp 0x1014ef0d
movaps xmm0, xmm2
subss xmm0, dword [0x101f0a38]
comiss xmm4, xmm0
jbe 0x1014eca6
addss xmm0, xmm1
jmp 0x1014ecaf
comiss xmm0, xmm3
jbe 0x1014ecaf
subss xmm0, xmm1
call fcn.1000caf0
comiss xmm5, xmm0
jb 0x1014ecc0
push 2
jmp 0x1014ec34
movaps xmm0, xmm2
subss xmm0, dword [0x101f0a08]
comiss xmm4, xmm0
jbe 0x1014ecd6
addss xmm0, xmm1
jmp 0x1014ecdf
comiss xmm0, xmm3
jbe 0x1014ecdf
subss xmm0, xmm1
call fcn.1000caf0
comiss xmm5, xmm0
jb 0x1014ecf0
push 3
jmp 0x1014ec34
movaps xmm0, xmm2
subss xmm0, dword [0x101f099c]
comiss xmm4, xmm0
jbe 0x1014ed06
addss xmm0, xmm1
jmp 0x1014ed0f
comiss xmm0, xmm3
jbe 0x1014ed0f
subss xmm0, xmm1
call fcn.1000caf0
comiss xmm5, xmm0
jb 0x1014ed20
push 4
jmp 0x1014ec34
comiss xmm4, xmm2
movaps xmm0, xmm2
jbe 0x1014ed2e
addss xmm0, xmm1
jmp 0x1014ed3a
comiss xmm2, xmm3
jbe 0x1014ed3a
movaps xmm0, xmm2
subss xmm0, xmm1
call fcn.1000caf0
comiss xmm5, xmm0
jb 0x1014ed4b
push 5
jmp 0x1014ec34
movaps xmm0, xmm2
subss xmm0, dword [0x101f0bc0]
comiss xmm4, xmm0
jbe 0x1014ed61
addss xmm0, xmm1
jmp 0x1014ed6a
comiss xmm0, xmm3
jbe 0x1014ed6a
subss xmm0, xmm1
call fcn.1000caf0
comiss xmm5, xmm0
jb 0x1014ed7b
push 6
jmp 0x1014ec34
movaps xmm0, xmm2
subss xmm0, dword [0x101f0bd4]
comiss xmm4, xmm0
jbe 0x1014ed91
addss xmm0, xmm1
jmp 0x1014ed9a
comiss xmm0, xmm3
jbe 0x1014ed9a
subss xmm0, xmm1
call fcn.1000caf0
comiss xmm5, xmm0
jb 0x1014edab
push 7
jmp 0x1014ec34
subss xmm2, dword [0x101f0bdc]
comiss xmm4, xmm2
jbe 0x1014edbe
addss xmm2, xmm1
jmp 0x1014edc7
comiss xmm2, xmm3
jbe 0x1014edc7
subss xmm2, xmm1
movaps xmm0, xmm2
call fcn.1000caf0
comiss xmm5, xmm0
jb 0x1014ec49
push 8
jmp 0x1014ec34
movss xmm0, dword [eax + 0x1a8]
lea esi, [edi + 0xf8]
comiss xmm0, xmm5
jb 0x1014edff
movss dword [edi + 0x88], xmm2
jmp 0x1014ec4f
movss xmm1, dword [edi + 0xfc]
lea eax, [edi + 0xfc]
movss xmm0, dword [esi]
lea edx, [ebp - 0x3c]
comiss xmm1, xmm7
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x3f800000
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0x3f800000
mov dword [ebp - 0x3c], 0
cmovae edx, eax
lea eax, [ebp - 0x34]
comiss xmm0, xmm7
cmovae ecx, esi
comiss xmm5, xmm0
cmovae eax, ecx
comiss xmm5, xmm1
movss xmm0, dword [eax]
lea eax, [ebp - 0x30]
cmovae eax, edx
movss xmm2, dword [eax]
subss xmm2, xmm0
mulss xmm2, dword [edi + 0xa4]
addss xmm2, xmm0
movss xmm0, dword [edi + 0x344]
ucomiss xmm0, dword [0x101f0754]
lahf
test ah, 0x44
jnp 0x1014ee93
call fcn.1014d340
mulss xmm0, dword [0x101f0b8c]
movss dword [edi + 0x348], xmm0
movss xmm1, dword [edi + 0x348]
movaps xmm0, xmm2
call fcn.1001f930
addss xmm0, dword [0x101f0728]
movss xmm2, dword [0x101f0be0]
movss xmm1, dword [0x101f0ab4]
mulss xmm0, dword [ebp - 0x1c]
addss xmm0, dword [edi + 0x88]
comiss xmm2, xmm0
jbe 0x1014eed9
nop dword [eax]
addss xmm0, xmm1
comiss xmm2, xmm0
ja 0x1014eed0
movss xmm2, dword [0x101f0a6c]
comiss xmm0, xmm2
jbe 0x1014eeef
subss xmm0, xmm1
comiss xmm0, xmm2
ja 0x1014eee6
movss dword [edi + 0x88], xmm0
jmp 0x1014ec4f
comiss xmm2, dword [0x101f0a6c]
jbe 0x1014ef0d
subss xmm2, dword [0x101f0ab4]
xorps xmm1, xmm1
comiss xmm2, xmm1
jb 0x1014ef34
movss xmm0, dword [edi + 0x334]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1014ef34
divss xmm2, xmm0
mulss xmm2, dword [0x101f09d4]
jmp 0x1014ef51
movss xmm0, dword [edi + 0x330]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1014ef51
divss xmm2, xmm0
mulss xmm2, dword [0x101f0bcc]
push dword [ebp - 0x18]
lea ecx, [edi + 0x1f8]
call fcn.1014bf30
movss xmm2, dword [edi + 0x7c]
movss xmm0, dword [0x101f0be0]
comiss xmm0, xmm2
jbe 0x1014ef7b
addss xmm2, dword [0x101f0ab4]
jmp 0x1014ef8c
comiss xmm2, dword [0x101f0a6c]
jbe 0x1014ef8c
subss xmm2, dword [0x101f0ab4]
xorps xmm6, xmm6
comiss xmm2, xmm6
jbe 0x1014efa6
divss xmm2, dword [edi + 0x33c]
mulss xmm2, dword [0x101f0a08]
jmp 0x1014efb6
divss xmm2, dword [edi + 0x338]
mulss xmm2, dword [0x101f0bd4]
push dword [ebp - 0x18]
lea ecx, [edi + 0x204]
call fcn.1014bf30
push dword [ebp - 0x18]
movss xmm2, dword [esi]
lea ecx, [edi + 0x1bc]
call fcn.1014bf30
movss xmm0, dword [edi + 0x124]
lea ecx, [edi + 0x21c]
mulss xmm0, dword [edi + 0xa4]
movss xmm2, dword [0x101f0824]
push dword [ebp - 0x18]
subss xmm2, xmm0
call fcn.1014bf30
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