Function at 0x101787b0
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 0x10276fbb
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x38
push esi
push edi
mov eax, dword [0x103230ac]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
movss dword [ebp - 0x2c], xmm3
mov dword [ebp - 0x24], ecx
mov edi, dword [ebx + 0xc]
mov ecx, edi
mov esi, dword [ebx + 8]
mov dword [edi + 0x60], esi
mov eax, dword [0x1040e414]
call eax
test al, al
je 0x101794cf
mov eax, dword [0x103c3bb0]
test al, 1
jne 0x1017895d
or eax, 1
mov dword [0x103c3bb0], eax
mov dword [ebp - 4], 0
mov eax, dword [0x103bf630]
mov dword [ebp - 0x18], eax
cmp eax, dword [0x103bf634]
je 0x1017888a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x14], ecx
test ecx, ecx
je 0x1017887c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10178853
xor edx, edx
test ecx, ecx
je 0x1017887c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10178860
cmp esi, 0x72e242a1
je 0x101788a3
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x18], eax
cmp eax, dword [0x103bf634]
jne 0x10178840
xor eax, eax
mov esi, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov dword [0x103c2340], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10178962
mov eax, dword [ebp - 0x14]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x10178948
xor ecx, ecx
mov dword [ebp - 0x20], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x28], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x101788f4
cmp dword [ecx + 4], 0
jle 0x101788f4
push 0
mov edx, 0x99ed136f
call fcn.1013c990
add esp, 4
test eax, eax
je 0x101788f1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x14]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x10178900
xor edx, edx
test ecx, ecx
je 0x1017892c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10178910
cmp esi, 0x99ed136f
je 0x1017894f
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x101788c0
mov eax, edi
jmp 0x1017888c
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
jmp 0x1017888c
mov eax, dword [0x103c2340]
movss xmm1, dword [ebx + 0x10]
addss xmm1, dword [eax + esi]
movss xmm4, dword [0x1030bc60]
movss xmm2, dword [0x1030bb34]
comiss xmm4, xmm1
jbe 0x1017898a
addss xmm1, xmm2
comiss xmm4, xmm1
ja 0x10178981
movss xmm3, dword [0x1030bae8]
comiss xmm1, xmm3
jbe 0x101789a0
subss xmm1, xmm2
comiss xmm1, xmm3
ja 0x10178997
mov eax, dword [ebx + 0x18]
cmp dword [edi + 0x70], eax
je 0x101794cf
movss xmm5, dword [edi + 0x6c]
movss xmm0, dword [ebx + 0x14]
ucomiss xmm5, xmm0
lahf
test ah, 0x44
jnp 0x101794cf
subss xmm0, xmm5
maxss xmm0, dword [0x1030b6ac]
movss dword [edi + 0x74], xmm0
movss xmm0, dword [ebp - 0x2c]
comiss xmm4, xmm0
jbe 0x101789e9
nop
addss xmm0, xmm2
comiss xmm4, xmm0
ja 0x101789e0
comiss xmm0, xmm3
jbe 0x101789f9
nop
subss xmm0, xmm2
comiss xmm0, xmm3
ja 0x101789f0
comiss xmm4, xmm1
movss dword [edi + 0x78], xmm0
jbe 0x10178a0c
addss xmm1, xmm2
comiss xmm4, xmm1
ja 0x10178a03
comiss xmm1, xmm3
jbe 0x10178a1a
subss xmm1, xmm2
comiss xmm1, xmm3
ja 0x10178a11
mov eax, dword [0x103c3ba8]
movss dword [edi + 0x7c], xmm1
test al, 1
jne 0x10178b6d
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 1
mov eax, dword [0x103bf630]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
je 0x10178a9a
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10178a8c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178a63
xor edx, edx
test ecx, ecx
je 0x10178a8c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178a70
cmp edi, 0x1eee87cc
je 0x10178ab3
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
jne 0x10178a50
xor eax, eax
mov esi, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov dword [0x103c3bec], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10178b72
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10178b58
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x2c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10178b04
cmp dword [ecx + 4], 0
jle 0x10178b04
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10178b01
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178b10
xor edx, edx
test ecx, ecx
je 0x10178b3c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178b20
cmp edi, 0x559d81af
je 0x10178b5f
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x10178ad0
mov eax, edi
jmp 0x10178a9c
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x10178a9c
mov eax, dword [0x103c3bec]
movq xmm0, qword [eax + esi]
movq qword [edi + 0xb0], xmm0
mov eax, dword [eax + esi + 8]
mov dword [edi + 0xb8], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x28], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x30], eax
mov eax, dword [0x103c3b8c]
test al, 1
jne 0x10178ced
or eax, 1
mov dword [0x103c3b8c], eax
mov dword [ebp - 4], 2
mov eax, dword [0x103bf630]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
je 0x10178c1f
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10178c11
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178be8
xor edx, edx
test ecx, ecx
je 0x10178c11
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178bf5
cmp edi, 0x4e9f1122
je 0x10178c38
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
jne 0x10178bd5
xor eax, eax
mov esi, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov dword [0x103c22e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10178cf2
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10178cd8
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x2c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10178c85
cmp dword [ecx + 4], 0
jle 0x10178c85
push 0
mov edx, 0x940131c5
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10178c82
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178c90
xor edx, edx
test ecx, ecx
je 0x10178cbc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178ca0
cmp edi, 0x940131c5
je 0x10178cdf
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x10178c51
mov eax, edi
jmp 0x10178c21
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x10178c21
mov eax, dword [0x103c22e8]
push dword [eax + esi]
mov ecx, dword [ebp - 0x28]
call dword [ebp - 0x30]
mov dword [edi + 0x64], eax
cmp eax, dword [edi + 0x68]
jne 0x10178d09
cmp byte [edi + 4], 0
je 0x10178d33
xor ecx, ecx
nop dword [eax + eax]
mov eax, dword [esi + 0x2990]
add eax, ecx
je 0x10178d28
mov dword [eax + 0xc], 0xffffffff
mov dword [eax + 0x10], 0xffffffff
add ecx, 0x38
cmp ecx, 0x2d8
jl 0x10178d10
movss xmm4, dword [edi + 0x74]
mov eax, dword [0x103c3b88]
movss xmm5, dword [0x1030b86c]
mulss xmm4, dword [0x1030b94c]
mov dword [ebp - 0x38], 0x3f800000
movss xmm3, dword [edi + 0xa4]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x28], 0x3f800000
mov dword [ebp - 0x2c], 0
test al, 1
jne 0x10178ebd
or eax, 1
mov dword [0x103c3b88], eax
mov dword [ebp - 4], 3
mov eax, dword [0x103bf630]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
je 0x10178dea
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10178ddc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178db0
xor edx, edx
test ecx, ecx
je 0x10178ddc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178dc0
cmp edi, 0x72e242a1
je 0x10178e03
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
jne 0x10178d98
xor eax, eax
mov esi, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov dword [0x103c3c10], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10178ec2
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10178ea8
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x30], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10178e54
cmp dword [ecx + 4], 0
jle 0x10178e54
push 0
mov edx, 0xe4f7740e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10178e51
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178e60
xor edx, edx
test ecx, ecx
je 0x10178e8c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178e70
cmp edi, 0xe4f7740e
je 0x10178eaf
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x10178e20
mov eax, edi
jmp 0x10178dec
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x10178dec
mov eax, dword [0x103c3c10]
movss xmm0, dword [eax + esi]
lea ecx, [ebp - 0x30]
addss xmm0, dword [edi + 0xa8]
xorps xmm6, xmm6
lea edx, [ebp - 0x2c]
comiss xmm6, xmm0
movss dword [ebp - 0x30], xmm0
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x28]
comiss xmm0, xmm5
seta al
test al, al
cmove ecx, edx
movss xmm2, dword [ecx]
movaps xmm1, xmm2
subss xmm1, xmm3
comiss xmm1, xmm4
jbe 0x10178f0c
addss xmm3, xmm4
jmp 0x10178f24
movaps xmm0, xmm4
xorps xmm0, xmmword [0x1030c060]
comiss xmm0, xmm1
jbe 0x10178f21
subss xmm3, xmm4
jmp 0x10178f24
movaps xmm3, xmm2
comiss xmm6, xmm3
lea ecx, [ebp - 0x30]
lea edx, [ebp - 0x34]
movss dword [ebp - 0x30], xmm3
seta al
test al, al
cmove edx, ecx
lea ecx, [ebp - 0x38]
comiss xmm3, xmm5
seta al
test al, al
cmove ecx, edx
mov eax, dword [ecx]
mov dword [edi + 0xa4], eax
mov eax, dword [0x103c6fd8]
test al, 1
jne 0x1017909d
or eax, 1
mov dword [0x103c6fd8], eax
mov dword [ebp - 4], 4
mov eax, dword [0x103bf630]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
je 0x10178fca
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10178fbc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178f93
xor edx, edx
test ecx, ecx
je 0x10178fbc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178fa0
cmp edi, 0x54aff69
je 0x10178fe3
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x103bf634]
jne 0x10178f80
xor eax, eax
mov esi, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov dword [0x103c6fb8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101790a2
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10179088
xor ecx, ecx
mov dword [ebp - 0x1c], 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 0x10179034
cmp dword [ecx + 4], 0
jle 0x10179034
push 0
mov edx, 0x3775d33c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10179031
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10179040
xor edx, edx
test ecx, ecx
je 0x1017906c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10179050
cmp edi, 0x3775d33c
je 0x1017908f
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x10179000
mov eax, edi
jmp 0x10178fcc
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x10178fcc
mov eax, dword [0x103c6fb8]
cmp dword [eax + esi], 0
je 0x101790bd
mov dword [eax + esi], 0
mov ecx, esi
mov eax, dword [0x1040e430]
push 8
call eax
xorps xmm6, xmm6
mov dword [esi + 0x286], 0
movss xmm0, dword [esi + 0xa134]
ucomiss xmm0, xmm6
lahf
test ah, 0x44
jnp 0x101790e2
mov dword [esi + 0xa134], 0
movss xmm2, dword [ebx + 0x14]
mov ecx, dword [ebp - 0x24]
push edi
call fcn.10175bf0
movss xmm2, dword [ebx + 0x14]
mov ecx, dword [ebp - 0x24]
push edi
call fcn.10177700
mov eax, dword [0x1040e35c]
mov ecx, edi
call eax
mov eax, dword [0x1040e4c4]
mov ecx, edi
call eax
mov ecx, dword [esi + 0x2990]
movss xmm1, dword [ecx + 0x290]
movaps xmm0, xmm1
call fcn.1000e030
xorps xmm5, xmm5
comiss xmm5, xmm0
jae 0x10179172
mulss xmm1, dword [edi + 0x74]
addss xmm1, dword [ecx + 0x294]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x10179159
addss xmm1, dword [0x1030b86c]
jmp 0x1017916a
movss xmm0, dword [0x1030b86c]
comiss xmm1, xmm0
jbe 0x1017916a
subss xmm1, xmm0
movss dword [ecx + 0x294], xmm1
mov edx, dword [esi + 0x2990]
movss xmm3, dword [0x1030b864]
movss xmm2, dword [edx + 0x218]
comiss xmm2, xmm5
jbe 0x10179268
movss xmm1, dword [edx + 0x220]
movaps xmm0, xmm1
call fcn.1000e030
comiss xmm5, xmm0
movss xmm4, dword [0x1030b86c]
jae 0x101791ee
mulss xmm1, dword [edi + 0x74]
addss xmm1, dword [edx + 0x224]
comiss xmm1, xmm4
jb 0x101791c3
movaps xmm1, xmm3
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x101791dd
addss xmm1, xmm4
jmp 0x101791e6
comiss xmm1, xmm4
jbe 0x101791e6
subss xmm1, xmm4
movss dword [edx + 0x224], xmm1
movss xmm1, dword [edx + 0x21c]
movaps xmm0, xmm1
call fcn.1000e030
comiss xmm5, xmm0
jae 0x10179268
mulss xmm1, dword [edi + 0x74]
lea eax, [ebp - 0x34]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x30], 0x3f800000
mov dword [ebp - 0x38], 0
addss xmm1, xmm2
comiss xmm1, xmm5
movss dword [ebp - 0x34], xmm1
cmovae ecx, eax
lea eax, [ebp - 0x30]
comiss xmm4, xmm1
cmovae eax, ecx
lea ecx, [ebp - 0x38]
movss xmm0, dword [eax]
lea eax, [ebp - 0x34]
comiss xmm0, xmm5
mov dword [ebp - 0x30], 0x3f800000
mov dword [ebp - 0x38], 0
movss dword [ebp - 0x34], xmm0
cmovae ecx, eax
lea eax, [ebp - 0x30]
comiss xmm4, xmm0
cmovae eax, ecx
mov eax, dword [eax]
mov dword [edx + 0x218], eax
mov edx, dword [esi + 0x2990]
movss xmm2, dword [edx + 0x218]
comiss xmm2, xmm5
jbe 0x10179308
movss xmm1, dword [edx + 0x21c]
comiss xmm5, xmm1
jbe 0x10179308
movaps xmm0, xmm1
call fcn.1000e030
comiss xmm5, xmm0
jae 0x10179308
mulss xmm1, dword [edi + 0x74]
lea eax, [ebp - 0x34]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x30], 0x3f800000
mov dword [ebp - 0x38], 0
addss xmm1, xmm2
movss xmm2, dword [0x1030b86c]
comiss xmm1, xmm5
movss dword [ebp - 0x34], xmm1
cmovae ecx, eax
lea eax, [ebp - 0x30]
comiss xmm2, xmm1
cmovae eax, ecx
lea ecx, [ebp - 0x38]
movss xmm0, dword [eax]
lea eax, [ebp - 0x34]
comiss xmm0, xmm5
mov dword [ebp - 0x30], 0x3f800000
mov dword [ebp - 0x38], 0
movss dword [ebp - 0x34], xmm0
cmovae ecx, eax
lea eax, [ebp - 0x30]
comiss xmm2, xmm0
cmovae eax, ecx
mov eax, dword [eax]
mov dword [edx + 0x218], eax
jmp 0x10179310
movss xmm2, dword [0x1030b86c]
mov ecx, dword [esi + 0x2990]
movss xmm1, dword [ecx + 0x258]
movaps xmm0, xmm1
call fcn.1000e030
comiss xmm5, xmm0
jae 0x1017936b
mulss xmm1, dword [edi + 0x74]
addss xmm1, dword [ecx + 0x25c]
comiss xmm1, xmm2
jb 0x10179340
movaps xmm1, xmm3
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x1017935a
addss xmm1, xmm2
jmp 0x10179363
comiss xmm1, xmm2
jbe 0x10179363
subss xmm1, xmm2
movss dword [ecx + 0x25c], xmm1
test byte [0x103a7d9c], 4
mov eax, dword [edi + 0x60]
mov eax, dword [eax + 0x2990]
jne 0x10179380
xorps xmm2, xmm2
movss dword [eax + 0x2cc], xmm2
movss dword [eax + 0x2c0], xmm2
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0x18], 0
jne 0x101793a3
mov dword [eax + 0x20], 0
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0x50], 0
jne 0x101793b6
mov dword [eax + 0x58], 0
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0x88], 0
jne 0x101793cf
mov dword [eax + 0x90], 0
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0xc0], 0
jne 0x101793e8
mov dword [eax + 0xc8], 0
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0xf8], 0
jne 0x10179401
mov dword [eax + 0x100], 0
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0x130], 0
jne 0x1017941a
mov dword [eax + 0x138], 0
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0x168], 0
jne 0x10179433
mov dword [eax + 0x170], 0
mov eax, dword [esi + 0x2990]
cmp dword [eax + 0x1a0], 0
jne 0x1017944c
mov dword [eax + 0x1a8], 0
mov ecx, 0x1c0
mov eax, dword [esi + 0x2990]
cmp dword [eax + ecx + 0x18], 0
jne 0x10179466
mov dword [eax + ecx + 0x20], 0
add ecx, 0x38
cmp ecx, 0x2d8
jl 0x10179451
movss xmm0, dword [edi + 0x80]
lea ecx, [ebp - 0x44]
mov eax, dword [0x1040e488]
push ecx
mov ecx, esi
mov dword [ebp - 0x44], 0
movss dword [ebp - 0x40], xmm0
mov dword [ebp - 0x3c], 0
call eax
mov eax, dword [edi + 0x64]
movq xmm0, qword [edi + 0xb0]
mov dword [edi + 0x68], eax
mov eax, dword [edi + 0xb8]
movq qword [edi + 0xbc], xmm0
movss xmm0, dword [ebx + 0x14]
mov dword [edi + 0xc4], eax
mov eax, dword [ebx + 0x18]
mov byte [edi + 4], 0
mov dword [edi + 0x70], eax
movss dword [edi + 0x6c], xmm0
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 0x14