Function at 0x101691e0
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 0x1022f5c1
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x68
push esi
push edi
mov eax, dword [0x102d2084]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x18], eax
lea ecx, [eax + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
imul eax, eax, 0xef30
add eax, 0x107efae0
mov dword [ebp - 0x4c], eax
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
cmp dword [eax + 0x13c], 0
je 0x1016a7b0
mov ecx, dword [eax + 0x134]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x1016a7b0
mov eax, dword [0x1036f68c]
test al, 1
jne 0x101693c5
or eax, 1
mov dword [0x1036f68c], eax
mov dword [ebp - 4], 0
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
je 0x101692db
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x101692cd
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x101692a4
xor edx, edx
test ecx, ecx
je 0x101692cd
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x101692b1
cmp esi, 0x4e9f1122
je 0x101692f1
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
jne 0x10169291
mov ecx, dword [ebp - 0x2c]
xor eax, eax
mov dword [0x1036f690], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101693ca
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10169398
xor ecx, ecx
mov dword [ebp - 0x30], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10169344
cmp dword [ecx + 4], 0
jle 0x10169344
push 0
mov edx, 0x1c93bcf0
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10169341
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], 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 0x10169350
xor edx, edx
test ecx, ecx
je 0x1016937c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10169360
cmp esi, 0x1c93bcf0
je 0x101693ab
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jl 0x10169310
mov ecx, dword [ebp - 0x2c]
mov eax, edi
mov dword [0x1036f690], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101693ca
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
mov dword [0x1036f690], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101693ca
mov eax, dword [0x1036f690]
mov eax, dword [eax + ecx]
mov dword [ebp - 0x44], eax
mov eax, dword [0x10370fac]
test al, 1
jne 0x10169535
or eax, 1
mov dword [0x10370fac], eax
mov dword [ebp - 4], 1
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
je 0x1016944a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1016943c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10169413
xor edx, edx
test ecx, ecx
je 0x1016943c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10169420
cmp esi, 0x72e242a1
je 0x10169460
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
jne 0x10169400
mov ecx, dword [ebp - 0x2c]
xor eax, eax
mov dword [0x10370f6c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1016953a
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10169508
xor ecx, ecx
mov dword [ebp - 0x30], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x101694b4
cmp dword [ecx + 4], 0
jle 0x101694b4
push 0
mov edx, 0x84cdad2
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101694b1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], 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 0x101694c0
xor edx, edx
test ecx, ecx
je 0x101694ec
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x101694d0
cmp esi, 0x84cdad2
je 0x1016951b
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jl 0x10169480
mov ecx, dword [ebp - 0x2c]
mov eax, edi
mov dword [0x10370f6c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1016953a
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
mov dword [0x10370f6c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1016953a
mov eax, dword [0x10370f6c]
cmp dword [ebp - 0x44], 2
je 0x1016a7b0
cmp dword [eax + ecx], 0
jle 0x1016a7b0
mov eax, dword [ebp - 0x4c]
cmp byte [eax], 0
je 0x1016a7b0
cmp dword [eax + 4], 0
je 0x1016a7b0
mov ecx, dword [0x10bbb620]
add ecx, 0x91761abb
xor ecx, 0xfd410b50
mov edx, dword [ecx + 0x134]
mov dword [ebp - 0x40], edx
test edx, edx
je 0x1016978f
mov ecx, dword [ecx + 0x184]
mov eax, dword [ecx + 0x1c]
cmp dword [eax + 0x30], ecx
jne 0x1016978f
cmp dword [ebp - 0x18], edx
je 0x1016978f
mov ecx, dword [0x10370f7c]
test cl, 1
jne 0x101696ed
or ecx, 1
mov dword [0x10370f7c], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
je 0x1016961b
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1016960d
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x101695e4
xor edx, edx
test ecx, ecx
je 0x1016960d
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x101695f1
cmp esi, 0x1eee87cc
je 0x10169634
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
jne 0x101695d1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x10370f7c]
mov dword [0x10370f34], eax
jmp 0x101696f2
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x101696d8
xor ecx, ecx
mov dword [ebp - 0x30], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10169684
cmp dword [ecx + 4], 0
jle 0x10169684
push 0
mov edx, 0xa5bfefb3
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10169681
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], 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 0x10169690
xor edx, edx
test ecx, ecx
je 0x101696bc
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x101696a0
cmp esi, 0xa5bfefb3
je 0x101696df
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jl 0x10169650
mov eax, edi
jmp 0x1016961d
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x1016961d
mov eax, dword [0x10370f34]
mov edx, dword [ebp - 0x18]
mov edx, dword [eax + edx]
mov dword [ebp - 0x44], edx
test cl, 1
jne 0x10169783
or ecx, 1
mov dword [0x10370f7c], ecx
mov dword [ebp - 4], 3
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
je 0x10169772
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10169764
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10169737
xor edx, edx
test ecx, ecx
je 0x10169764
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10169744
cmp esi, 0x1eee87cc
je 0x10169864
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
jne 0x10169724
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x44]
mov dword [0x10370f34], eax
mov ecx, dword [ebp - 0x40]
cmp edx, dword [ecx + eax]
je 0x1016a7b0
mov edi, dword [ebp - 0x18]
mov eax, dword [edi + 0x9960]
mov dword [ebp - 0x34], eax
test eax, eax
je 0x1016a7b0
movss xmm0, dword [eax + 0x78]
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
movss dword [ebp - 0x30], xmm0
xor eax, 0xfd410b50
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x40], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x3c], eax
mov eax, dword [0x10370f2c]
test al, 1
jne 0x101699e5
or eax, 1
mov dword [0x10370f2c], eax
mov dword [ebp - 4], 4
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
je 0x1016984e
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10169840
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10169813
xor edx, edx
test ecx, ecx
je 0x10169840
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10169820
cmp esi, 0x4e9f1122
je 0x1016991d
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
jne 0x10169800
mov edi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x1036f688], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101699ea
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10169908
xor ecx, ecx
mov dword [ebp - 0x30], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x101698b4
cmp dword [ecx + 4], 0
jle 0x101698b4
push 0
mov edx, 0xa5bfefb3
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101698b1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], 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 0x101698c0
xor edx, edx
test ecx, ecx
je 0x101698ec
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x101698d0
cmp esi, 0xa5bfefb3
je 0x1016990f
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jl 0x10169880
mov eax, edi
jmp 0x10169774
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x10169774
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x101699b8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1016996a
cmp dword [ecx + 4], 0
jle 0x1016996a
push 0
mov edx, 0x940131c5
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10169967
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x10169973
xor edx, edx
test ecx, ecx
je 0x1016999c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10169980
cmp esi, 0x940131c5
je 0x101699cb
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10169936
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x18]
mov dword [0x1036f688], eax
jmp 0x101699ea
mov eax, dword [ebp - 0x44]
mov edi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
mov dword [0x1036f688], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101699ea
mov eax, dword [0x1036f688]
push dword [eax + edi]
mov ecx, dword [ebp - 0x40]
call dword [ebp - 0x3c]
movss xmm5, dword [0x102ba7b4]
movss xmm6, dword [0x102ba73c]
test eax, eax
jne 0x10169a0f
xorps xmm2, xmm2
jmp 0x1016a6ff
mov eax, dword [0x1036f694]
xorps xmm0, xmm0
movss dword [ebp - 0x78], xmm0
test al, 1
jne 0x10169b75
or eax, 1
mov dword [0x1036f694], eax
mov dword [ebp - 4], 5
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
je 0x10169a8d
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10169a7f
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10169a56
xor edx, edx
test ecx, ecx
je 0x10169a7f
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10169a63
cmp esi, 0x4e9f1122
je 0x10169aa3
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
jne 0x10169a43
mov edi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x10370f4c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10169b7a
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x10169b48
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10169af4
cmp dword [ecx + 4], 0
jle 0x10169af4
push 0
mov edx, 0x53630d14
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10169af1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10169b00
xor edx, edx
test ecx, ecx
je 0x10169b2c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10169b10
cmp edi, 0x53630d14
je 0x10169b5b
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10169ac0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x18]
mov dword [0x10370f4c], eax
jmp 0x10169b7a
mov eax, dword [ebp - 0x44]
mov edi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
mov dword [0x10370f4c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10169b7a
mov eax, dword [0x10370f4c]
movss xmm0, dword [eax + edi + 4]
movss xmm2, dword [eax + edi]
movaps xmm1, xmm0
movss xmm3, dword [eax + edi + 8]
mulss xmm1, xmm0
movss dword [ebp - 0x28], xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
movss dword [ebp - 0x2c], xmm2
movss dword [ebp - 0x1c], xmm3
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, xmm3
addss xmm1, xmm0
movss xmm0, dword [0x102baa6c]
movss dword [ebp - 0x44], xmm1
movss xmm1, dword [0x102ba808]
call fcn.1000da60
movss xmm1, dword [ebp - 0x44]
comiss xmm1, xmm0
jbe 0x10169c2f
movaps xmm0, xmm1
call fcn.1000da70
addss xmm0, dword [0x102ba60c]
movss xmm1, dword [0x102ba7b4]
movss xmm2, dword [0x102baa6c]
divss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x2c]
mulss xmm0, xmm2
movss dword [ebp - 0x2c], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x28]
mulss xmm1, dword [ebp - 0x1c]
mulss xmm0, xmm2
mulss xmm1, xmm2
movss dword [ebp - 0x28], xmm0
movss dword [ebp - 0x1c], xmm1
mov esi, dword [ebp - 0x34]
mov eax, dword [0x10370f28]
mov dword [ebp - 0x50], 0x3f800000
mov dword [ebp - 0x54], 0
movss xmm0, dword [esi + 0x6c]
movss dword [ebp - 0x14], xmm0
test al, 1
jne 0x10169d9d
or eax, 1
mov dword [0x10370f28], eax
mov dword [ebp - 4], 6
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
je 0x10169cca
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x10169cbc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10169c90
xor edx, edx
test ecx, ecx
je 0x10169cbc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10169ca0
cmp edi, 0x72e242a1
je 0x10169ce3
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
jne 0x10169c76
xor eax, eax
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x18]
mov dword [0x10370fb0], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10169da2
mov eax, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x10169d88
xor ecx, ecx
mov dword [ebp - 0x3c], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10169d34
cmp dword [ecx + 4], 0
jle 0x10169d34
push 0
mov edx, 0xe4f7740e
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10169d31
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x20]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10169d40
xor edx, edx
test ecx, ecx
je 0x10169d6c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10169d50
cmp edi, 0xe4f7740e
je 0x10169d8f
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ecx
cmp edx, dword [eax + 4]
jl 0x10169d00
mov eax, edi
jmp 0x10169ccc
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
jmp 0x10169ccc
mov eax, dword [0x10370fb0]
movss xmm0, dword [eax + edi]
lea edx, [ebp - 0x54]
addss xmm0, dword [esi + 0xa8]
mov byte [ebp - 0x44], 0
lea eax, [ebp - 0x50]
push dword [ebp - 0x44]
lea ecx, [ebp - 0x58]
push eax
movss dword [ebp - 0x58], xmm0
call fcn.1002d9d0
movss xmm4, dword [esi + 0xa4]
add esp, 8
movss xmm2, dword [ebp - 0x14]
mulss xmm2, dword [0x102ba88c]
movss xmm1, dword [eax]
movaps xmm3, xmm1
subss xmm3, xmm4
comiss xmm2, xmm3
jb 0x10169e0a
movaps xmm0, xmm2
xorps xmm0, xmmword [0x102baf90]
comiss xmm3, xmm0
jae 0x10169e11
movaps xmm1, xmm4
subss xmm1, xmm2
jmp 0x10169e11
movaps xmm1, xmm2
addss xmm1, xmm4
mov byte [ebp - 0x44], 0
lea eax, [ebp - 0x5c]
push dword [ebp - 0x44]
lea edx, [ebp - 0x60]
movss dword [ebp - 0x64], xmm1
push eax
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x5c], 0x3f800000
mov dword [ebp - 0x60], 0
call fcn.1002d9d0
add esp, 8
movss xmm0, dword [eax]
mov eax, dword [0x1036f694]
movss dword [ebp - 0x74], xmm0
test al, 1
jne 0x10169fa5
or eax, 1
mov dword [0x1036f694], eax
mov dword [ebp - 4], 7
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x3c], eax
cmp eax, dword [0x1036cbb4]
je 0x10169ebc
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x10169eae
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10169e85
xor edx, edx
test ecx, ecx
je 0x10169eae
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10169e92
cmp edi, 0x4e9f1122
je 0x10169ed2
mov eax, dword [ebp - 0x3c]
add eax, 4
mov dword [ebp - 0x3c], eax
cmp eax, dword [0x1036cbb4]
jne 0x10169e72
mov edi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x10370f4c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10169faa
mov eax, dword [ebp - 0x24]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x3c], edi
cmp dword [eax + 4], edi
jle 0x10169f78
xor ecx, ecx
mov dword [ebp - 0x38], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10169f24
cmp dword [ecx + 4], 0
jle 0x10169f24
push 0
mov edx, 0x53630d14
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10169f21
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [ebp - 0x24]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10169f30
xor edx, edx
test ecx, ecx
je 0x10169f5c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10169f40
cmp edi, 0x53630d14
je 0x10169f8b
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
inc edx
mov edi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], ecx
cmp edx, dword [eax + 4]
jl 0x10169ef0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x18]
mov dword [0x10370f4c], eax
jmp 0x10169faa
mov eax, dword [ebp - 0x44]
mov edi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x20]
mov dword [0x10370f4c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10169faa
mov eax, dword [0x10370f4c]
movss xmm0, dword [ebp - 0x14]
mulss xmm0, dword [0x102baad0]
movss xmm3, dword [eax + edi + 4]
movss xmm1, dword [eax + edi]
movss xmm2, dword [ebp - 0x2c]
movss xmm4, dword [eax + edi + 8]
subss xmm2, xmm1
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [ebp - 0x28]
subss xmm0, xmm3
movss dword [ebp - 0x20], xmm1
movss dword [ebp - 0x40], xmm3
movss xmm3, dword [ebp - 0x1c]
subss xmm3, xmm4
movss dword [ebp - 0x44], xmm4
movss dword [ebp - 0x3c], xmm2
movaps xmm1, xmm0
movss dword [ebp - 0x38], xmm0
mulss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
movss dword [ebp - 0x24], xmm3
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, xmm3
addss xmm0, xmm1
call fcn.1000da70
movss xmm3, dword [ebp - 0x68]
movaps xmm1, xmm0
comiss xmm3, xmm1
jb 0x1016a0aa
movaps xmm0, xmm3
xorps xmm0, xmmword [0x102baf90]
comiss xmm1, xmm0
jb 0x1016a058
movss xmm1, dword [ebp - 0x1c]
movss xmm4, dword [ebp - 0x28]
movss xmm5, dword [ebp - 0x2c]
jmp 0x1016a0f1
addss xmm1, dword [0x102ba60c]
movss xmm2, dword [0x102ba7b4]
movss xmm4, dword [ebp - 0x40]
movss xmm5, dword [ebp - 0x20]
divss xmm2, xmm1
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, dword [ebp - 0x38]
mulss xmm0, dword [ebp - 0x3c]
mulss xmm2, dword [ebp - 0x24]
mulss xmm1, xmm3
mulss xmm0, xmm3
mulss xmm2, xmm3
subss xmm4, xmm1
movss xmm1, dword [ebp - 0x44]
subss xmm5, xmm0
subss xmm1, xmm2
jmp 0x1016a0f1
addss xmm1, dword [0x102ba60c]
movss xmm0, dword [0x102ba7b4]
divss xmm0, xmm1
movaps xmm5, xmm0
movaps xmm4, xmm0
mulss xmm0, dword [ebp - 0x24]
mulss xmm5, dword [ebp - 0x3c]
mulss xmm4, dword [ebp - 0x38]
mulss xmm0, xmm3
mulss xmm5, xmm3
addss xmm0, dword [ebp - 0x44]
mulss xmm4, xmm3
addss xmm5, dword [ebp - 0x20]
addss xmm4, dword [ebp - 0x40]
movaps xmm1, xmm0
mov eax, dword [0x10bbb620]
movss xmm0, dword [0x102baa60]
movss xmm2, dword [0x102ba63c]
lea ecx, [eax - 0x6e89e545]
xor ecx, 0xfd410b50
cmp dword [ecx + 0x13c], 0
je 0x1016a2be
mov ecx, dword [0x1036f6f0]
mov dword [ebp - 0x3c], 0x3a83126f
test cl, 1
jne 0x1016a287
or ecx, 1
mov dword [0x1036f6f0], ecx
mov dword [ebp - 4], 8
mov ecx, dword [0x1036cbb0]
mov dword [ebp - 0x28], ecx
cmp ecx, dword [0x1036cbb4]
je 0x1016a1b3
mov edx, dword [ecx]
mov dword [ebp - 0x40], edx
test edx, edx
je 0x1016a1a5
mov edi, dword [edx + 0xc]
mov ecx, 0x811c9dc5
xor edx, edx
nop dword [eax]
inc edx
cmp byte [edx + edi], 0
jne 0x1016a170
xor esi, esi
test edx, edx
je 0x1016a1a2
mov eax, ecx
nop
movsx ecx, byte [esi + edi]
inc esi
xor ecx, eax
imul eax, ecx, 0x1000193
cmp esi, edx
jb 0x1016a180
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x72e242a1
mov eax, dword [0x10bbb620]
je 0x1016a1ca
mov ecx, dword [ebp - 0x28]
add ecx, 4
mov dword [ebp - 0x28], ecx
cmp ecx, dword [0x1036cbb4]
jne 0x1016a156
xor ecx, ecx
mov edi, dword [ebp - 0x18]
mov dword [0x10370f98], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1016a28d
mov ecx, dword [ebp - 0x40]
xor edi, edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x44], edi
cmp dword [ecx + 4], edi
jle 0x1016a26d
xor eax, eax
mov dword [ebp - 0x2c], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x68], esi
test ecx, ecx
je 0x1016a218
cmp dword [ecx + 4], 0
jle 0x1016a218
push 0
mov edx, 0xf3e9a9ed
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1016a215
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x28], edi
mov eax, dword [ebp - 0x2c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1016a221
xor edx, edx
test ecx, ecx
je 0x1016a24c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1016a230
cmp edi, 0xf3e9a9ed
je 0x1016a274
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x44]
add eax, 0x3c
mov ecx, dword [ebp - 0x40]
inc edx
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x2c], eax
cmp edx, dword [ecx + 4]
jl 0x1016a1e3
mov eax, dword [0x10bbb620]
mov ecx, edi
jmp 0x1016a1b5
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x28]
mov eax, dword [0x10bbb620]
jmp 0x1016a1b5
mov ecx, dword [0x10370f98]
add eax, 0x91761abb
xor eax, 0xfd410b50
cmp byte [ecx + edi], 0
mov ecx, dword [eax + 0x13c]
je 0x1016a2ab
add ecx, 0x138
jmp 0x1016a2b1
add ecx, 0x134
comiss xmm2, dword [ecx]
lea eax, [ebp - 0x3c]
cmovbe eax, ecx
movss xmm0, dword [eax]
mulss xmm4, xmm4
mulss xmm5, xmm5
mulss xmm1, xmm1
addss xmm4, xmm5
movss dword [ebp - 0x44], xmm0
addss xmm4, xmm1
movaps xmm0, xmm4
call fcn.1000da70
sub esp, 8
mov dword [esp + 4], 0x43820000
movss dword [esp], xmm0
call fcn.101f5de4
mov eax, dword [0x10bbb620]
add esp, 8
add eax, 0x91761abb
xor eax, 0xfd410b50
fstp dword [ebp - 0x40]
cmp dword [eax + 0x13c], 0
je 0x1016a339
movss xmm0, dword [ebp - 0x44]
sub esp, 8
mov dword [esp + 4], 0x3a83126f
movss dword [esp], xmm0
call fcn.101f5d81
fstp dword [ebp - 0x68]
movss xmm1, dword [ebp - 0x68]
add esp, 8
jmp 0x1016a341
movss xmm1, dword [0x102baa60]
movss xmm0, dword [0x102ba800]
lea eax, [ebp - 0x6c]
divss xmm0, xmm1
mov byte [ebp - 0x68], 0
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x6c], 0x3f800000
mov dword [ebp - 0x70], 0
push dword [ebp - 0x68]
mulss xmm0, dword [ebp - 0x40]
push eax
movss dword [ebp - 0x48], xmm0
call fcn.1002d9d0
mov esi, dword [ebp - 0x34]
xorps xmm3, xmm3
movss xmm4, dword [0x102ba7b4]
add esp, 8
movss xmm2, dword [ebp - 0x74]
comiss xmm2, xmm3
movss xmm1, dword [eax]
movss dword [ebp - 0x48], xmm1
movss xmm0, dword [esi + 0x11c]
mulss xmm0, dword [0x102ba700]
addss xmm0, dword [0x102ba6f4]
mulss xmm0, xmm1
movaps xmm1, xmm4
subss xmm1, xmm0
jbe 0x1016a40c
movss xmm0, dword [ebp - 0x68]
lea ecx, [ebp - 0x68]
comiss xmm3, xmm0
lea edx, [ebp - 0x74]
mov dword [ebp - 0x44], 0x3f800000
mov dword [ebp - 0x74], 0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x44]
comiss xmm0, xmm4
movss xmm0, dword [0x102ba73c]
subss xmm0, xmm1
seta al
test al, al
cmove ecx, edx
mulss xmm2, dword [ecx]
mulss xmm2, xmm0
addss xmm1, xmm2
movaps xmm0, xmm1
sub esp, 8
mulss xmm0, dword [esi + 0x334]
mulss xmm1, dword [esi + 0x338]
mov dword [esp + 4], 0x43b40000
movss dword [ebp - 0x44], xmm0
movss xmm0, dword [ebp - 0x30]
movss dword [ebp - 0x68], xmm1
movss dword [esp], xmm0
call fcn.101f5d25
movss xmm0, dword [ebp - 0x68]
add esp, 8
fstp dword [ebp - 0x74]
movss xmm1, dword [ebp - 0x74]
comiss xmm0, xmm1
jb 0x1016a47f
movss xmm0, dword [ebp - 0x44]
comiss xmm0, xmm1
jbe 0x1016a49d
mov dword [ebp - 4], 9
call fcn.1000da40
movaps xmm1, xmm0
mov dword [ebp - 4], 0xffffffff
addss xmm1, dword [ebp - 0x30]
jmp 0x1016a4a2
mov dword [ebp - 4], 0xa
call fcn.1000da40
movss xmm1, dword [ebp - 0x30]
mov dword [ebp - 4], 0xffffffff
subss xmm1, xmm0
jmp 0x1016a4a2
movss xmm1, dword [ebp - 0x78]
sub esp, 8
mov dword [esp + 4], 0x43b40000
movss dword [esp], xmm1
call fcn.101f5d25
movss xmm0, dword [ebp - 0x40]
add esp, 8
comiss xmm0, dword [0x102ba6b4]
fstp dword [ebp - 0x3c]
ja 0x1016a650
movss xmm0, dword [ebp - 0x1c]
mov dword [ebp - 4], 0xb
call fcn.1000da40
mov dword [ebp - 4], 0xffffffff
comiss xmm0, dword [0x102ba9d0]
ja 0x1016a650
mov eax, dword [0x1036f670]
test al, 1
jne 0x1016a637
or eax, 1
mov dword [0x1036f670], eax
mov dword [ebp - 4], 0xc
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x44], eax
cmp eax, dword [0x1036cbb4]
je 0x1016a56a
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x1016a55c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1016a533
xor edx, edx
test ecx, ecx
je 0x1016a55c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1016a540
cmp esi, 0x72e242a1
je 0x1016a579
mov eax, dword [ebp - 0x44]
add eax, 4
mov dword [ebp - 0x44], eax
cmp eax, dword [0x1036cbb4]
jne 0x1016a520
mov edi, dword [ebp - 0x18]
xor eax, eax
mov dword [0x10370fa0], eax
jmp 0x1016a63c
mov eax, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x44], edi
cmp dword [eax + 4], edi
jle 0x1016a618
xor ecx, ecx
mov dword [ebp - 0x40], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x78], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1016a5c6
cmp dword [ecx + 4], 0
jle 0x1016a5c6
push 0
mov edx, 0x9ef0d03e
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1016a5c3
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x28], edi
mov eax, dword [ebp - 0x2c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop
inc ecx
cmp byte [edi + ecx], 0
jne 0x1016a5d0
xor edx, edx
test ecx, ecx
je 0x1016a5fc
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1016a5e0
cmp esi, 0x9ef0d03e
je 0x1016a624
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
inc edx
mov edi, dword [ebp - 0x28]
add ecx, 0x3c
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
cmp edx, dword [eax + 4]
jl 0x1016a592
mov eax, edi
mov edi, dword [ebp - 0x18]
mov dword [0x10370fa0], eax
jmp 0x1016a63c
mov eax, dword [ebp - 0x78]
mov edi, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x28]
mov dword [0x10370fa0], eax
jmp 0x1016a63c
mov eax, dword [0x10370fa0]
movss xmm1, dword [ebp - 0x14]
mulss xmm1, dword [0x102baac8]
movss xmm4, dword [eax + edi]
jmp 0x1016a672
movss xmm1, dword [esi + 0x11c]
mulss xmm1, dword [0x102ba8e4]
movss xmm4, dword [ebp - 0x30]
addss xmm1, dword [0x102ba928]
mulss xmm1, dword [ebp - 0x14]
movss xmm2, dword [ebp - 0x3c]
movaps xmm3, xmm4
subss xmm3, xmm2
comiss xmm3, xmm1
jbe 0x1016a68e
addss xmm1, xmm2
movss dword [ebp - 0x14], xmm1
jmp 0x1016a6b0
movaps xmm0, xmm1
xorps xmm0, xmmword [0x102baf90]
comiss xmm0, xmm3
jbe 0x1016a6ab
subss xmm2, xmm1
movaps xmm1, xmm2
movss dword [ebp - 0x14], xmm1
jmp 0x1016a6b0
movss dword [ebp - 0x14], xmm4
movss xmm0, dword [0x102baba0]
movss xmm2, dword [ebp - 0x14]
comiss xmm0, xmm2
movss xmm1, dword [0x102baa78]
jbe 0x1016a6d9
nop word [eax + eax]
addss xmm2, xmm1
comiss xmm0, xmm2
ja 0x1016a6d0
movss xmm0, dword [0x102baa28]
comiss xmm2, xmm0
jbe 0x1016a6ef
subss xmm2, xmm1
comiss xmm2, xmm0
ja 0x1016a6e6
movss xmm5, dword [0x102ba7b4]
movss xmm6, dword [0x102ba73c]
mov esi, dword [ebp - 0x34]
lea eax, [ebp - 0x78]
movss xmm0, dword [esi + 0xf8]
lea ecx, [esi + 0xf8]
comiss xmm0, xmm5
mov dword [ebp - 0x78], 0x3f800000
mov dword [ebp - 0x74], 0x3f800000
lea edx, [esi + 0xfc]
movss xmm0, dword [esi + 0x11c]
xorps xmm4, xmm4
mulss xmm0, dword [0x102ba700]
movaps xmm3, xmm5
cmovbe eax, ecx
addss xmm0, dword [0x102ba6f0]
movss xmm1, dword [eax]
maxss xmm1, xmm4
mulss xmm1, xmm0
subss xmm3, xmm1
movss xmm1, dword [esi + 0xa4]
comiss xmm1, xmm4
jbe 0x1016a78d
movss xmm0, dword [edx]
lea eax, [ebp - 0x74]
comiss xmm0, xmm5
subss xmm6, xmm3
cmovbe eax, edx
movss xmm0, dword [eax]
maxss xmm0, xmm4
mulss xmm0, xmm1
mulss xmm0, xmm6
addss xmm3, xmm0
mov eax, dword [ebp - 0x4c]
mulss xmm3, dword [esi + 0x338]
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
mulss xmm3, xmm0
addss xmm3, xmm2
movss dword [esi + 0x80], xmm3
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