Function at 0x10177b30
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 0x1023382b
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x38
push esi
push edi
mov eax, dword [0x102d5080]
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 esi, dword [ebx + 0xc]
mov ecx, esi
mov edi, dword [ebx + 8]
mov dword [esi + 0x60], edi
mov eax, dword [0x103bfd6c]
call eax
test al, al
je 0x10178881
mov eax, dword [0x10375510]
test al, 1
jne 0x10177cdd
or eax, 1
mov dword [0x10375510], eax
mov dword [ebp - 4], 0
mov eax, dword [0x10371278]
mov dword [ebp - 0x18], eax
cmp eax, dword [0x1037127c]
je 0x10177c0a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x14], ecx
test ecx, ecx
je 0x10177bfc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10177bd3
xor edx, edx
test ecx, ecx
je 0x10177bfc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10177be0
cmp edi, 0x72e242a1
je 0x10177c23
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x18], eax
cmp eax, dword [0x1037127c]
jne 0x10177bc0
xor eax, eax
mov edi, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
mov dword [0x10373ca0], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10177ce2
mov eax, dword [ebp - 0x14]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], edi
cmp dword [eax + 4], edi
jle 0x10177cc8
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 0x10177c74
cmp dword [ecx + 4], 0
jle 0x10177c74
push 0
mov edx, 0x99ed136f
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x10177c71
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x14]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10177c80
xor edx, edx
test ecx, ecx
je 0x10177cac
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10177c90
cmp edi, 0x99ed136f
je 0x10177ccf
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 0x10177c40
mov eax, edi
jmp 0x10177c0c
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
jmp 0x10177c0c
mov eax, dword [0x10373ca0]
movss xmm1, dword [ebx + 0x10]
addss xmm1, dword [eax + edi]
movss xmm4, dword [0x102bdb98]
movss xmm2, dword [0x102bda6c]
comiss xmm4, xmm1
jbe 0x10177d0a
addss xmm1, xmm2
comiss xmm4, xmm1
ja 0x10177d01
movss xmm3, dword [0x102bda24]
comiss xmm1, xmm3
jbe 0x10177d20
subss xmm1, xmm2
comiss xmm1, xmm3
ja 0x10177d17
mov eax, dword [ebx + 0x18]
cmp dword [esi + 0x70], eax
je 0x10178881
movss xmm5, dword [esi + 0x6c]
movss xmm0, dword [ebx + 0x14]
ucomiss xmm5, xmm0
lahf
test ah, 0x44
jnp 0x10178881
subss xmm0, xmm5
maxss xmm0, dword [0x102bd5e4]
movss dword [esi + 0x74], xmm0
movss xmm0, dword [ebp - 0x2c]
comiss xmm4, xmm0
jbe 0x10177d69
nop
addss xmm0, xmm2
comiss xmm4, xmm0
ja 0x10177d60
comiss xmm0, xmm3
jbe 0x10177d79
nop
subss xmm0, xmm2
comiss xmm0, xmm3
ja 0x10177d70
comiss xmm4, xmm1
movss dword [esi + 0x78], xmm0
jbe 0x10177d8c
addss xmm1, xmm2
comiss xmm4, xmm1
ja 0x10177d83
comiss xmm1, xmm3
jbe 0x10177d9a
subss xmm1, xmm2
comiss xmm1, xmm3
ja 0x10177d91
mov eax, dword [0x10375508]
movss dword [esi + 0x7c], xmm1
test al, 1
jne 0x10177eed
or eax, 1
mov dword [0x10375508], eax
mov dword [ebp - 4], 1
mov eax, dword [0x10371278]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
je 0x10177e1a
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10177e0c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10177de3
xor edx, edx
test ecx, ecx
je 0x10177e0c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10177df0
cmp edi, 0x1eee87cc
je 0x10177e33
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
jne 0x10177dd0
xor eax, eax
mov edi, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
mov dword [0x1037554c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10177ef2
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10177ed8
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 0x10177e84
cmp dword [ecx + 4], 0
jle 0x10177e84
push 0
mov edx, 0x559d81af
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x10177e81
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 0x10177e90
xor edx, edx
test ecx, ecx
je 0x10177ebc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10177ea0
cmp edi, 0x559d81af
je 0x10177edf
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 0x10177e50
mov eax, edi
jmp 0x10177e1c
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x10177e1c
mov eax, dword [0x1037554c]
movq xmm0, qword [eax + edi]
movq qword [esi + 0xb0], xmm0
mov eax, dword [eax + edi + 8]
mov dword [esi + 0xb8], eax
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
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 [0x103754ec]
test al, 1
jne 0x1017806d
or eax, 1
mov dword [0x103754ec], eax
mov dword [ebp - 4], 2
mov eax, dword [0x10371278]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
je 0x10177f9f
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10177f91
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10177f68
xor edx, edx
test ecx, ecx
je 0x10177f91
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10177f75
cmp edi, 0x4e9f1122
je 0x10177fb8
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
jne 0x10177f55
xor eax, eax
mov edi, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
mov dword [0x10373c48], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10178072
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10178058
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 0x10178005
cmp dword [ecx + 4], 0
jle 0x10178005
push 0
mov edx, 0x940131c5
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x10178002
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 0x10178010
xor edx, edx
test ecx, ecx
je 0x1017803c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178020
cmp edi, 0x940131c5
je 0x1017805f
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 0x10177fd1
mov eax, edi
jmp 0x10177fa1
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x10177fa1
mov eax, dword [0x10373c48]
push dword [eax + edi]
mov ecx, dword [ebp - 0x28]
call dword [ebp - 0x30]
mov dword [esi + 0x64], eax
cmp eax, dword [esi + 0x68]
jne 0x10178089
cmp byte [esi + 4], 0
je 0x101780b3
xor ecx, ecx
nop dword [eax + eax]
mov eax, dword [edi + 0x2990]
add eax, ecx
je 0x101780a8
mov dword [eax + 0xc], 0xffffffff
mov dword [eax + 0x10], 0xffffffff
add ecx, 0x38
cmp ecx, 0x2d8
jl 0x10178090
movss xmm4, dword [esi + 0x74]
add esi, 0xa4
mov eax, dword [0x103754e8]
movss xmm5, dword [0x102bd7ac]
mulss xmm4, dword [0x102bd884]
mov dword [ebp - 0x38], 0x3f800000
movss xmm3, dword [esi]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x28], 0x3f800000
mov dword [ebp - 0x2c], 0
test al, 1
jne 0x1017823d
or eax, 1
mov dword [0x103754e8], eax
mov dword [ebp - 4], 3
mov eax, dword [0x10371278]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
je 0x1017816a
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x1017815c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178133
xor edx, edx
test ecx, ecx
je 0x1017815c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178140
cmp edi, 0x72e242a1
je 0x10178189
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
jne 0x10178120
xor eax, eax
mov ecx, dword [ebx + 0xc]
mov edi, dword [ebx + 8]
mov dword [0x10375570], eax
mov dword [ebp - 4], 0xffffffff
lea esi, [ecx + 0xa4]
jmp 0x10178245
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10178228
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x30], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x101781d6
cmp dword [ecx + 4], 0
jle 0x101781d6
push 0
mov edx, 0xe4f7740e
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x101781d3
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 0x101781e0
xor edx, edx
test ecx, ecx
je 0x1017820c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101781f0
cmp edi, 0xe4f7740e
je 0x1017822f
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 0x101781a2
mov eax, edi
jmp 0x1017816c
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x1017816c
mov eax, dword [0x10375570]
mov ecx, dword [ebx + 0xc]
movss xmm0, dword [eax + edi]
lea edx, [ebp - 0x2c]
addss xmm0, dword [ecx + 0xa8]
xorps xmm6, xmm6
lea ecx, [ebp - 0x30]
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 0x1017828f
addss xmm3, xmm4
jmp 0x101782b0
movaps xmm0, xmm4
xorps xmm0, xmmword [0x102bdf90]
comiss xmm0, xmm1
jbe 0x101782a4
subss xmm3, xmm4
jmp 0x101782b0
mov esi, dword [ebx + 0xc]
movaps xmm3, xmm2
add esi, 0xa4
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 [esi], eax
mov eax, dword [0x10378938]
test al, 1
jne 0x10178435
or eax, 1
mov dword [0x10378938], eax
mov dword [ebp - 4], 4
mov eax, dword [0x10371278]
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
je 0x1017834e
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10178340
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10178317
xor edx, edx
test ecx, ecx
je 0x10178340
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10178324
cmp edi, 0x54aff69
je 0x10178364
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [0x1037127c]
jne 0x10178304
mov edi, dword [ebx + 8]
xor eax, eax
mov dword [0x10378918], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1017843a
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], edi
cmp dword [eax + 4], edi
jle 0x10178408
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 0x101783b4
cmp dword [ecx + 4], 0
jle 0x101783b4
push 0
mov edx, 0x3775d33c
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x101783b1
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 0x101783c0
xor edx, edx
test ecx, ecx
je 0x101783ec
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101783d0
cmp edi, 0x3775d33c
je 0x1017841b
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 0x10178380
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebx + 8]
mov dword [0x10378918], eax
jmp 0x1017843a
mov eax, dword [ebp - 0x38]
mov edi, dword [ebx + 8]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
mov dword [0x10378918], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1017843a
mov eax, dword [0x10378918]
cmp dword [eax + edi], 0
je 0x10178455
mov dword [eax + edi], 0
mov ecx, edi
mov eax, dword [0x103bfd88]
push 8
call eax
xorps xmm6, xmm6
mov dword [edi + 0x286], 0
movss xmm0, dword [edi + 0xa134]
ucomiss xmm0, xmm6
lahf
test ah, 0x44
jnp 0x1017847a
mov dword [edi + 0xa134], 0
mov esi, dword [ebx + 0xc]
movss xmm2, dword [ebx + 0x14]
mov ecx, dword [ebp - 0x24]
push esi
call fcn.10174f70
movss xmm2, dword [ebx + 0x14]
mov ecx, dword [ebp - 0x24]
push esi
call fcn.10176a70
mov eax, dword [0x103bfcb4]
mov ecx, esi
call eax
mov eax, dword [0x103bfe1c]
mov ecx, esi
call eax
mov ecx, dword [edi + 0x2990]
lea edx, [edi + 0x2990]
mov eax, edx
movss xmm1, dword [ecx + 0x290]
movaps xmm0, xmm1
call fcn.1000deb0
xorps xmm5, xmm5
comiss xmm5, xmm0
jae 0x1017851b
mulss xmm1, dword [esi + 0x74]
addss xmm1, dword [ecx + 0x294]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x101784fc
addss xmm1, dword [0x102bd7ac]
jmp 0x1017850d
movss xmm0, dword [0x102bd7ac]
comiss xmm1, xmm0
jbe 0x1017850d
subss xmm1, xmm0
movss dword [ecx + 0x294], xmm1
lea eax, [edi + 0x2990]
mov esi, dword [edx]
movss xmm3, dword [0x102bd7a4]
movss xmm2, dword [esi + 0x218]
comiss xmm2, xmm5
jbe 0x10178618
movss xmm1, dword [esi + 0x220]
mov edx, eax
movaps xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
mov ecx, dword [ebx + 0xc]
movss xmm4, dword [0x102bd7ac]
jae 0x1017859e
mulss xmm1, dword [ecx + 0x74]
addss xmm1, dword [esi + 0x224]
comiss xmm1, xmm4
jb 0x1017856d
movaps xmm1, xmm3
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x10178587
addss xmm1, xmm4
jmp 0x10178590
comiss xmm1, xmm4
jbe 0x10178590
subss xmm1, xmm4
movss dword [esi + 0x224], xmm1
lea edx, [edi + 0x2990]
movss xmm1, dword [esi + 0x21c]
movaps xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jae 0x10178618
mulss xmm1, dword [ecx + 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 [esi + 0x218], eax
mov esi, dword [edx]
movss xmm2, dword [esi + 0x218]
comiss xmm2, xmm5
jbe 0x101786bb
movss xmm1, dword [esi + 0x21c]
comiss xmm5, xmm1
jbe 0x101786bb
movaps xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
jae 0x101786bb
mov eax, dword [ebx + 0xc]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x30], 0x3f800000
mov dword [ebp - 0x38], 0
mulss xmm1, dword [eax + 0x74]
lea eax, [ebp - 0x34]
addss xmm1, xmm2
movss xmm2, dword [0x102bd7ac]
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 [esi + 0x218], eax
jmp 0x101786c3
movss xmm2, dword [0x102bd7ac]
mov ecx, dword [edx]
movss xmm1, dword [ecx + 0x258]
movaps xmm0, xmm1
call fcn.1000deb0
comiss xmm5, xmm0
mov esi, dword [ebx + 0xc]
jae 0x1017871d
mulss xmm1, dword [esi + 0x74]
addss xmm1, dword [ecx + 0x25c]
comiss xmm1, xmm2
jb 0x101786f2
movaps xmm1, xmm3
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm5, xmm1
jbe 0x1017870c
addss xmm1, xmm2
jmp 0x10178715
comiss xmm1, xmm2
jbe 0x10178715
subss xmm1, xmm2
movss dword [ecx + 0x25c], xmm1
test byte [0x10359d04], 4
mov eax, dword [esi + 0x60]
mov eax, dword [eax + 0x2990]
jne 0x10178732
xorps xmm2, xmm2
movss dword [eax + 0x2cc], xmm2
movss dword [eax + 0x2c0], xmm2
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0x18], 0
jne 0x10178755
mov dword [eax + 0x20], 0
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0x50], 0
jne 0x10178768
mov dword [eax + 0x58], 0
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0x88], 0
jne 0x10178781
mov dword [eax + 0x90], 0
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0xc0], 0
jne 0x1017879a
mov dword [eax + 0xc8], 0
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0xf8], 0
jne 0x101787b3
mov dword [eax + 0x100], 0
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0x130], 0
jne 0x101787cc
mov dword [eax + 0x138], 0
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0x168], 0
jne 0x101787e5
mov dword [eax + 0x170], 0
mov eax, dword [edi + 0x2990]
cmp dword [eax + 0x1a0], 0
jne 0x101787fe
mov dword [eax + 0x1a8], 0
mov ecx, 0x1c0
mov eax, dword [edi + 0x2990]
cmp dword [eax + ecx + 0x18], 0
jne 0x10178818
mov dword [eax + ecx + 0x20], 0
add ecx, 0x38
cmp ecx, 0x2d8
jl 0x10178803
movss xmm0, dword [esi + 0x80]
lea ecx, [ebp - 0x44]
mov eax, dword [0x103bfde0]
push ecx
mov ecx, edi
mov dword [ebp - 0x44], 0
movss dword [ebp - 0x40], xmm0
mov dword [ebp - 0x3c], 0
call eax
mov eax, dword [esi + 0x64]
movq xmm0, qword [esi + 0xb0]
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0xb8]
movq qword [esi + 0xbc], xmm0
movss xmm0, dword [ebx + 0x14]
mov dword [esi + 0xc4], eax
mov eax, dword [ebx + 0x18]
mov byte [esi + 4], 0
mov dword [esi + 0x70], eax
movss dword [esi + 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