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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101e4973
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1b8
mov eax, dword [0x10285040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0xd8], edi
mov eax, dword [0x10769214]
mov edx, dword [0x107691ec]
add eax, 0x6a9ba001
xor eax, 0xcecda2b2
mov dword [ebp - 0xe4], 0x11
mov dword [ebp - 0xe8], eax
add edx, 0xcef01053
mov eax, dword [0x10b33e60]
xor edx, 0xa7410cc1
add eax, 0x7a4232c8
mov dword [ebp - 0xb0], edx
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x84], eax
mov eax, dword [0x1031e978]
test al, 1
jne 0x10033a03
or eax, 1
mov dword [0x1031e978], eax
mov dword [ebp - 4], 0
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x74], eax
cmp eax, ecx
je 0x100338e3
mov dword [ebp - 0x88], eax
nop
mov ecx, dword [eax]
mov dword [ebp - 0x94], ecx
test ecx, ecx
je 0x100338d2
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x100338a6
xor edx, edx
test ecx, ecx
je 0x100338d2
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x100338b3
cmp esi, 0x72e242a1
je 0x10033908
mov eax, dword [ebp - 0x88]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [0x1031cd84]
jne 0x10033890
mov esi, dword [0x1031cd80]
xor eax, eax
mov edi, dword [ebp - 0xd8]
mov edx, dword [ebp - 0xb0]
mov dword [0x10320218], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10033a11
mov eax, dword [ebp - 0x94]
xor edi, edi
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x88], edi
cmp dword [eax + 4], edi
jle 0x100339f6
xor ecx, ecx
mov dword [ebp - 0x78], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xac], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003396f
cmp dword [ecx + 4], 0
jle 0x1003396f
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10033969
mov eax, dword [esi + 0x2c]
add eax, ecx
add edi, eax
mov dword [ebp - 0x8c], edi
mov eax, dword [ebp - 0x94]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x10033978
xor edx, edx
test ecx, ecx
je 0x100339a4
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10033985
cmp esi, 0xf3e9a9ed
je 0x100339d9
mov eax, dword [ebp - 0x94]
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x78]
inc edx
mov edi, dword [ebp - 0x8c]
add ecx, 0x3c
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x78], ecx
cmp edx, dword [eax + 4]
jl 0x10033930
mov esi, dword [0x1031cd80]
mov eax, edi
mov dword [ebp - 0x74], esi
jmp 0x100338eb
mov eax, dword [ebp - 0xac]
mov esi, dword [0x1031cd80]
mov dword [ebp - 0x74], esi
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x8c]
jmp 0x100338eb
mov esi, dword [0x1031cd80]
mov eax, edi
jmp 0x100338eb
mov esi, dword [0x1031cd80]
mov eax, dword [0x10320218]
mov dword [ebp - 0x74], esi
mov ecx, dword [ebp - 0x84]
cmp byte [ecx + eax], 0
mov eax, dword [0x10b33e60]
je 0x10033a3c
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm4, dword [eax + 0x138]
jmp 0x10033a54
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm4, dword [eax + 0x134]
movss xmm3, dword [edx + 0x1ac]
movss xmm2, dword [edx + 0x1a8]
movaps xmm1, xmm3
movaps xmm0, xmm2
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
call fcn.1000d460
maxss xmm0, dword [0x10271024]
xor ecx, ecx
mov edx, 0x11
mov dword [ebp - 0xdc], ecx
divss xmm0, xmm4
mulss xmm0, dword [0x102710e8]
subss xmm0, dword [0x10271024]
cvttss2si eax, xmm0
test eax, eax
cmovs eax, ecx
lea ecx, [ebp - 0xe0]
sub edx, eax
lea eax, [ebp - 0xdc]
mov dword [ebp - 0xe0], edx
cmovns eax, ecx
cmp edx, 0x11
lea ecx, [ebp - 0xe4]
cmovle ecx, eax
mov eax, dword [ecx]
mov dword [ebp - 0xec], eax
test eax, eax
jne 0x10033aeb
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov eax, edi
jmp 0x10034ce3
mov ecx, dword [ebp - 0xb0]
xor edi, edi
mov dword [ebp - 0xac], edi
movss xmm0, dword [ecx + 0x1b0]
test eax, eax
jle 0x10034ccf
nop dword [eax]
mov edx, dword [0x10b33e60]
lea eax, [edi + 1]
add edx, 0x7a4232c8
movd xmm5, eax
mov eax, dword [ebp - 0xb0]
xor edx, 0xfcb4fca8
cvtdq2ps xmm5, xmm5
mov ecx, dword [edx + 0x108]
mulss xmm5, dword [ecx + 0x20]
movaps xmm6, xmm5
movaps xmm7, xmm5
mulss xmm6, dword [eax + 0x1a8]
mulss xmm7, dword [eax + 0x1ac]
mulss xmm5, dword [eax + 0x1b0]
movaps xmm2, xmm6
mov eax, dword [ebp - 0xe8]
movaps xmm1, xmm7
movss dword [ebp - 0x90], xmm6
movss dword [ebp - 0x94], xmm7
movaps xmm0, xmm5
movss dword [ebp - 0x88], xmm5
addss xmm2, dword [eax + 0x3cbc64]
addss xmm1, dword [eax + 0x3cbc68]
addss xmm0, dword [eax + 0x3cbc6c]
movss dword [ebp - 0xbc], xmm6
movss dword [ebp - 0xb8], xmm7
movss dword [ebp - 0xd4], xmm2
movss dword [ebp - 0xd0], xmm1
movss dword [ebp - 0xcc], xmm0
mov eax, dword [edx + 0x14c]
mov dword [ebp - 0x80], eax
mov eax, dword [0x10320228]
movss dword [ebp - 0xb4], xmm5
test al, 1
jne 0x10033d5b
or eax, 1
mov dword [0x10320228], eax
mov dword [ebp - 4], 1
mov ecx, dword [0x1031cd84]
cmp esi, ecx
je 0x10033c52
mov eax, esi
mov dword [ebp - 0x78], esi
cmp eax, ecx
je 0x10033c52
mov ecx, dword [eax]
mov dword [ebp - 0x8c], ecx
test ecx, ecx
je 0x10033c41
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10033c18
xor edx, edx
test ecx, ecx
je 0x10033c41
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10033c25
cmp edi, 0x72e242a1
je 0x10033c65
mov eax, dword [ebp - 0x78]
add eax, 4
mov dword [ebp - 0x78], eax
cmp eax, dword [0x1031cd84]
jne 0x10033c02
mov esi, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e930], eax
jmp 0x10033d60
mov eax, dword [ebp - 0x8c]
xor edi, edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x78], edi
cmp dword [eax + 4], edi
jle 0x10033d48
xor ecx, ecx
mov dword [ebp - 0x74], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10033cbb
cmp dword [ecx + 4], 0
jle 0x10033cbb
push 0
mov edx, 0xa4a37590
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10033cb5
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x7c], edi
mov eax, dword [ebp - 0x8c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10033cc4
xor edx, edx
test ecx, ecx
je 0x10033cf0
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10033cd1
cmp edi, 0xa4a37590
je 0x10033d25
mov eax, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x7c]
add ecx, 0x3c
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x10033c81
mov esi, dword [0x1031cd80]
mov eax, edi
mov dword [ebp - 0x74], esi
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10033d60
mov eax, dword [ebp - 0x84]
mov esi, dword [0x1031cd80]
mov dword [ebp - 0x74], esi
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x7c]
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10033d60
mov esi, dword [ebp - 0x74]
mov eax, edi
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10033d60
mov eax, dword [0x1031e930]
mov ecx, dword [ebp - 0x80]
mov al, byte [ecx + eax]
mov ecx, dword [0x10b33e60]
and al, 1
add ecx, 0x7a4232c8
mov byte [ebp - 0x95], al
xor ecx, 0xfcb4fca8
mov eax, dword [ecx + 0x14c]
mov dword [ebp - 0x8c], eax
mov eax, dword [0x110119e8]
test al, 1
jne 0x10033dab
or eax, 1
mov dword [0x110119e8], eax
mov edx, dword [ecx + 0x204]
mov dword [0x11011a10], edx
jmp 0x10033db1
mov edx, dword [0x11011a10]
test al, 2
jne 0x10033dc8
or eax, 2
mov dword [0x110119e8], eax
mov eax, dword [ecx + 0x234]
mov dword [0x110119fc], eax
cmp byte [ebp - 0x95], 0
jne 0x10033e0b
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov dword [ebp - 0x84], eax
mov eax, dword [ecx + 0x108]
movss xmm0, dword [ebp - 0x84]
mulss xmm0, dword [eax + 0x20]
subss xmm5, xmm0
movss dword [ebp - 0x88], xmm5
movss dword [ebp - 0xb4], xmm5
jmp 0x10033e8c
mov eax, dword [0x10320228]
test al, 1
jne 0x10033e8c
or eax, 1
mov dword [0x10320228], eax
mov dword [ebp - 4], 2
cmp esi, dword [0x1031cd84]
je 0x10033e7e
nop dword [eax + eax]
mov eax, dword [esi]
mov dword [ebp - 0x7c], eax
test eax, eax
je 0x10033e70
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10033e43
xor edx, edx
test ecx, ecx
je 0x10033e6d
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10033e50
cmp edi, 0x72e242a1
je 0x10034005
mov esi, dword [ebp - 0x74]
add esi, 4
mov dword [ebp - 0x74], esi
cmp esi, dword [0x1031cd84]
jne 0x10033e30
xor eax, eax
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xcc]
lea ecx, [ebp - 0x70]
movss xmm3, dword [ebp - 0xd4]
movss xmm4, dword [ebp - 0xd0]
movaps xmm0, xmm3
mov dword [ebp - 0x108], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
unpcklps xmm0, xmm4
movq qword [ebp - 0xd4], xmm0
xor eax, 0xfcb4fca8
movq qword [ebp - 0x110], xmm0
mov eax, dword [eax + 0x108]
movss xmm2, dword [eax + 0x20]
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, xmm6
mulss xmm0, xmm7
mulss xmm2, xmm5
addss xmm1, xmm3
addss xmm0, xmm4
addss xmm2, dword [ebp - 0xcc]
movss dword [ebp - 0xc8], xmm1
movss dword [ebp - 0xc4], xmm0
movss dword [ebp - 0xc0], xmm2
call fcn.1002dfb0
push 1
mov dword [ebp - 0xf8], 0x1026b070
call fcn.101e132f
mov dword [ebp - 0xf0], eax
add esp, 4
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xf4], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x110]
mov dword [ebp - 0xa4], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x9c], eax
mov eax, dword [0x10320194]
test al, 1
jne 0x100341b8
or eax, 1
mov dword [0x10320194], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x74], eax
cmp eax, ecx
je 0x10033fee
mov dword [ebp - 0x80], eax
mov ecx, dword [eax]
mov dword [ebp - 0x7c], ecx
test ecx, ecx
je 0x10033fe0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10033fb0
xor edx, edx
test ecx, ecx
je 0x10033fe0
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10033fc0
cmp edi, 0x1eee87cc
je 0x100340c0
mov eax, dword [ebp - 0x80]
add eax, 4
mov dword [ebp - 0x80], eax
cmp eax, dword [0x1031cd84]
jne 0x10033f97
mov eax, dword [ebp - 0x74]
xor ecx, ecx
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100341c6
mov eax, dword [ebp - 0x7c]
xor edi, edi
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x78], edi
cmp dword [eax + 4], edi
jle 0x100340a8
xor ecx, ecx
mov dword [ebp - 0x80], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10034057
cmp dword [ecx + 4], 0
jle 0x10034057
push 0
mov edx, 0xa4a37590
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10034054
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x74], edi
mov eax, dword [ebp - 0x7c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034060
xor edx, edx
test ecx, ecx
je 0x1003408c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034070
cmp edi, 0xa4a37590
je 0x100340af
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x80]
inc edx
mov edi, dword [ebp - 0x74]
add ecx, 0x3c
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x80], ecx
cmp edx, dword [eax + 4]
jl 0x10034020
mov eax, edi
jmp 0x10033e80
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x74]
jmp 0x10033e80
mov eax, dword [ebp - 0x7c]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x100341a4
xor ecx, ecx
mov dword [ebp - 0x74], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10034117
cmp dword [ecx + 4], 0
jle 0x10034117
push 0
mov edx, 0x7d388d3e
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10034114
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x7c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034120
xor edx, edx
test ecx, ecx
je 0x1003414c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034130
cmp edi, 0x7d388d3e
je 0x10034181
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x100340e0
mov eax, dword [0x1031cd80]
mov ecx, edi
mov dword [ebp - 0x74], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100341c6
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x78]
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x74], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100341c6
mov eax, dword [ebp - 0x74]
mov ecx, edi
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100341c6
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031e960]
mov dword [ebp - 0x74], eax
add ecx, dword [ebp - 0x8c]
mov dword [ebp - 0xa0], ecx
mov ecx, dword [0x1031e928]
test cl, 1
jne 0x10034325
or ecx, 1
mov dword [0x1031e928], ecx
mov dword [ebp - 4], 4
cmp eax, dword [0x1031cd84]
je 0x1003424a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x78], ecx
test ecx, ecx
je 0x1003423c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034213
xor edx, edx
test ecx, ecx
je 0x1003423c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034220
cmp edi, 0x1eee87cc
je 0x1003425d
mov eax, dword [ebp - 0x74]
add eax, 4
mov dword [ebp - 0x74], eax
cmp eax, dword [0x1031cd84]
jne 0x10034200
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1003432a
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x100342fb
xor ecx, ecx
mov dword [ebp - 0x74], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x100342ad
cmp dword [ecx + 4], 0
jle 0x100342ad
push 0
mov edx, 0xe57f80c
call fcn.1012b660
add esp, 4
test eax, eax
je 0x100342aa
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x7c], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x100342b6
xor edx, edx
test ecx, ecx
je 0x100342df
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100342c3
cmp edi, 0xe57f80c
je 0x1003430b
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x7c]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x10034276
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1003432a
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x7c]
mov dword [0x1031e940], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1003432a
mov eax, dword [0x1031e940]
push dword [ebp - 0xa0]
add eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x170]
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.1004cc20
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0xf8]
push ecx
mov ecx, dword [ebp - 0xa4]
push 0x201400b
push eax
call dword [ebp - 0x9c]
movss xmm3, dword [ebp - 0x44]
ucomiss xmm3, dword [0x10271024]
lahf
test ah, 0x44
jnp 0x100348a2
mov dword [ebp - 0x84], 0
nop dword [eax]
movss xmm4, dword [ebp - 0x54]
movss xmm5, dword [ebp - 0x58]
movaps xmm2, xmm4
mulss xmm2, dword [ebp - 0x94]
movaps xmm0, xmm5
mulss xmm0, dword [ebp - 0x90]
movss xmm6, dword [ebp - 0x50]
movss xmm7, dword [ebp - 0x88]
movss xmm3, dword [ebp - 0x90]
addss xmm2, xmm0
movaps xmm0, xmm6
mulss xmm0, xmm7
addss xmm2, xmm0
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm0, xmm5
mulss xmm2, xmm6
subss xmm3, xmm0
mulss xmm1, xmm4
subss xmm7, xmm2
movaps xmm2, xmm4
movaps xmm0, xmm3
movss dword [ebp - 0x90], xmm3
movss xmm3, dword [ebp - 0x94]
subss xmm3, xmm1
movss dword [ebp - 0xbc], xmm0
mulss xmm0, xmm5
movss dword [ebp - 0x88], xmm7
movss dword [ebp - 0xb4], xmm7
mulss xmm2, xmm3
movss dword [ebp - 0x94], xmm3
movss dword [ebp - 0xb8], xmm3
movss xmm3, dword [ebp - 0x44]
addss xmm2, xmm0
movaps xmm0, xmm7
mulss xmm0, xmm6
addss xmm2, xmm0
xorps xmm0, xmm0
comiss xmm0, xmm2
jbe 0x100344b4
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm0, xmm5
mulss xmm1, xmm4
movss xmm4, dword [ebp - 0x90]
subss xmm4, xmm0
mulss xmm2, xmm6
movss xmm0, dword [ebp - 0x94]
subss xmm0, xmm1
subss xmm7, xmm2
movss dword [ebp - 0x90], xmm4
movss dword [ebp - 0xbc], xmm4
movss dword [ebp - 0x94], xmm0
movss dword [ebp - 0xb8], xmm0
movss dword [ebp - 0x88], xmm7
movss dword [ebp - 0xb4], xmm7
jmp 0x100344bc
movss xmm4, dword [ebp - 0x90]
mov ecx, dword [0x10b33e60]
movss xmm1, dword [0x10271024]
add ecx, 0x7a4232c8
xor ecx, 0xfcb4fca8
subss xmm1, xmm3
mov eax, dword [ecx + 0x108]
mulss xmm1, dword [eax + 0x20]
movaps xmm2, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x94]
mulss xmm2, xmm4
addss xmm0, dword [ebp - 0x60]
mulss xmm1, xmm7
addss xmm2, dword [ebp - 0x64]
addss xmm1, dword [ebp - 0x5c]
unpcklps xmm2, xmm0
movq qword [ebp - 0xc8], xmm2
movss dword [ebp - 0x114], xmm1
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0xc0], eax
mov eax, dword [ecx + 0x110]
mov dword [ebp - 0xa0], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xa8], eax
mov eax, dword [0x10320194]
test al, 1
jne 0x100346c8
or eax, 1
mov dword [0x10320194], eax
mov dword [ebp - 4], 5
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x74], eax
cmp eax, ecx
je 0x100345bb
mov dword [ebp - 0x80], eax
mov ecx, dword [eax]
mov dword [ebp - 0x78], ecx
test ecx, ecx
je 0x100345ad
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034584
xor edx, edx
test ecx, ecx
je 0x100345ad
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034591
cmp edi, 0x1eee87cc
je 0x100345d2
mov eax, dword [ebp - 0x80]
add eax, 4
mov dword [ebp - 0x80], eax
cmp eax, dword [0x1031cd84]
jne 0x10034571
mov eax, dword [ebp - 0x74]
xor ecx, ecx
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100346d6
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x100346b4
xor ecx, ecx
mov dword [ebp - 0x74], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x9c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10034627
cmp dword [ecx + 4], 0
jle 0x10034627
push 0
mov edx, 0x7d388d3e
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10034624
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x7c], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034630
xor edx, edx
test ecx, ecx
je 0x1003465c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034640
cmp edi, 0x7d388d3e
je 0x10034691
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x7c]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x100345f0
mov eax, dword [0x1031cd80]
mov ecx, edi
mov dword [ebp - 0x74], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100346d6
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x7c]
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x74], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100346d6
mov eax, dword [ebp - 0x74]
mov ecx, edi
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x100346d6
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031e960]
mov dword [ebp - 0x74], eax
add ecx, dword [ebp - 0x8c]
mov dword [ebp - 0xa4], ecx
mov ecx, dword [0x1031e928]
test cl, 1
jne 0x10034835
or ecx, 1
mov dword [0x1031e928], ecx
mov dword [ebp - 4], 6
cmp eax, dword [0x1031cd84]
je 0x1003475a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x78], ecx
test ecx, ecx
je 0x1003474c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034723
xor edx, edx
test ecx, ecx
je 0x1003474c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034730
cmp edi, 0x1eee87cc
je 0x1003476d
mov eax, dword [ebp - 0x74]
add eax, 4
mov dword [ebp - 0x74], eax
cmp eax, dword [0x1031cd84]
jne 0x10034710
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1003483a
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x1003480b
xor ecx, ecx
mov dword [ebp - 0x74], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x9c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x100347bd
cmp dword [ecx + 4], 0
jle 0x100347bd
push 0
mov edx, 0xe57f80c
call fcn.1012b660
add esp, 4
test eax, eax
je 0x100347ba
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x7c], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x100347c6
xor edx, edx
test ecx, ecx
je 0x100347ef
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100347d3
cmp edi, 0xe57f80c
je 0x1003481b
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x7c]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x10034786
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1003483a
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x7c]
mov dword [0x1031e940], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1003483a
mov eax, dword [0x1031e940]
push dword [ebp - 0xa4]
add eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x170]
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.1004cc20
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0xf8]
push ecx
mov ecx, dword [ebp - 0xa0]
push 0x201400b
push eax
call dword [ebp - 0xa8]
movss xmm3, dword [ebp - 0x44]
ucomiss xmm3, dword [0x10271024]
lahf
test ah, 0x44
jnp 0x100348a2
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp eax, 2
jl 0x10034390
movq xmm0, qword [ebp - 0x64]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xcc], eax
mov eax, dword [0x10b33e60]
movq qword [ebp - 0xc8], xmm0
add eax, 0x7a4232c8
movq qword [ebp - 0xd4], xmm0
xor eax, 0xfcb4fca8
movss xmm0, dword [ebp - 0x5c]
subss xmm0, dword [0x10271070]
movss dword [ebp - 0xc0], xmm0
mov eax, dword [eax + 0x110]
mov dword [ebp - 0xa4], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x10320194]
test al, 1
jne 0x10034aaa
or eax, 1
mov dword [0x10320194], eax
mov dword [ebp - 4], 7
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x90], eax
cmp eax, ecx
je 0x10034985
mov dword [ebp - 0x84], eax
mov ecx, dword [eax]
mov dword [ebp - 0x88], ecx
test ecx, ecx
je 0x10034974
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034948
xor edx, edx
test ecx, ecx
je 0x10034974
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034955
cmp edi, 0x1eee87cc
je 0x1003499f
mov eax, dword [ebp - 0x84]
add eax, 4
mov dword [ebp - 0x84], eax
cmp eax, dword [0x1031cd84]
jne 0x10034932
mov eax, dword [ebp - 0x90]
xor ecx, ecx
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10034abb
mov eax, dword [ebp - 0x88]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x84], edi
cmp dword [eax + 4], edi
jle 0x10034a93
xor ecx, ecx
mov dword [ebp - 0x80], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa8], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x100349fa
cmp dword [ecx + 4], 0
jle 0x100349fa
push 0
mov edx, 0x7d388d3e
call fcn.1012b660
add esp, 4
test eax, eax
je 0x100349f4
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x88]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034a03
xor edx, edx
test ecx, ecx
je 0x10034a2f
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034a10
cmp edi, 0x7d388d3e
je 0x10034a6d
mov eax, dword [ebp - 0x88]
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], ecx
cmp edx, dword [eax + 4]
jl 0x100349c0
mov eax, dword [0x1031cd80]
mov ecx, edi
mov dword [ebp - 0x90], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10034abb
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x78]
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x90], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10034abb
mov eax, dword [ebp - 0x90]
mov ecx, edi
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10034abb
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031e960]
mov dword [ebp - 0x90], eax
add ecx, dword [ebp - 0x8c]
mov dword [ebp - 0x9c], ecx
mov ecx, dword [0x1031e928]
test cl, 1
jne 0x10034c30
or ecx, 1
mov dword [0x1031e928], ecx
mov dword [ebp - 4], 8
cmp eax, dword [0x1031cd84]
je 0x10034b43
nop
mov ecx, dword [eax]
mov dword [ebp - 0x88], ecx
test ecx, ecx
je 0x10034b32
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10034b06
xor edx, edx
test ecx, ecx
je 0x10034b32
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034b13
cmp edi, 0x1eee87cc
je 0x10034b56
mov eax, dword [ebp - 0x90]
add eax, 4
mov dword [ebp - 0x90], eax
cmp eax, dword [0x1031cd84]
jne 0x10034af0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x10034c35
mov eax, dword [ebp - 0x88]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x84], edi
cmp dword [eax + 4], edi
jle 0x10034c06
xor ecx, ecx
mov dword [ebp - 0x80], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa8], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10034baf
cmp dword [ecx + 4], 0
jle 0x10034baf
push 0
mov edx, 0xe57f80c
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10034ba9
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x88]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10034bb8
xor edx, edx
test ecx, ecx
je 0x10034be4
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10034bc5
cmp edi, 0xe57f80c
je 0x10034c16
mov eax, dword [ebp - 0x88]
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], ecx
cmp edx, dword [eax + 4]
jl 0x10034b75
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x10034c35
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x78]
mov dword [0x1031e940], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10034c35
mov eax, dword [0x1031e940]
push dword [ebp - 0x9c]
add eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x1c0]
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.1004cc20
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0xf8]
push ecx
mov ecx, dword [ebp - 0xa4]
push 0x201400b
push eax
call dword [ebp - 0xa0]
mov edi, dword [ebp - 0xac]
movq xmm0, qword [ebp - 0xbc]
inc edi
mov eax, dword [ebp - 0xb4]
movq qword [ebp - 0x104], xmm0
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xac], edi
cmp edi, dword [ebp - 0xec]
jge 0x10034cb7
mov esi, dword [0x1031cd80]
mov dword [ebp - 0x74], esi
jmp 0x10033b10
movss xmm0, dword [ebp - 0xfc]
movss xmm3, dword [ebp - 0x100]
movss xmm2, dword [ebp - 0x104]
mov eax, dword [ebp - 0xd8]
movss dword [eax], xmm2
movss dword [eax + 4], xmm3
movss dword [eax + 8], xmm0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.101e0e46
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret