Function at 0x1013bc80
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 0x101f1de3
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x178
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 dword [ebp - 0xd8], ecx
mov ecx, dword [0x107691ec]
add ecx, 0xcef01053
xor ecx, 0xa7410cc1
add ecx, 0xc0
mov dword [ebp - 0x84], ecx
je 0x1013d1ea
mov edi, dword [0x10769214]
add edi, 0x6a9ba001
xor edi, 0xcecda2b2
add edi, 0x3cbc40
mov dword [ebp - 0xb0], edi
je 0x1013d1ea
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x7c], eax
mov eax, dword [0x1031e978]
test al, 1
jne 0x1013bed1
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 0x1013bdb3
mov dword [ebp - 0x88], eax
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x94], ecx
test ecx, ecx
je 0x1013bda2
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1013bd76
xor edx, edx
test ecx, ecx
je 0x1013bda2
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1013bd83
cmp esi, 0x72e242a1
je 0x1013bdd8
mov eax, dword [ebp - 0x88]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [0x1031cd84]
jne 0x1013bd60
mov esi, dword [0x1031cd80]
xor eax, eax
mov ecx, dword [ebp - 0x84]
mov edi, dword [ebp - 0xb0]
mov dword [0x10320218], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1013bedf
mov eax, dword [ebp - 0x94]
xor edi, edi
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x88], edi
cmp dword [eax + 4], edi
jle 0x1013bec4
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 0x1013be3d
cmp dword [ecx + 4], 0
jle 0x1013be3d
push 0
mov edx, 0xf3e9a9ed
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013be37
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
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 0x1013be46
xor edx, edx
test ecx, ecx
je 0x1013be72
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1013be53
cmp esi, 0xf3e9a9ed
je 0x1013bea7
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 0x1013be00
mov esi, dword [0x1031cd80]
mov eax, edi
mov dword [ebp - 0x74], esi
jmp 0x1013bdbb
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 0x1013bdbb
mov esi, dword [0x1031cd80]
mov eax, edi
jmp 0x1013bdbb
mov esi, dword [0x1031cd80]
mov eax, dword [0x10320218]
mov dword [ebp - 0x74], esi
mov edx, dword [ebp - 0x7c]
cmp byte [edx + eax], 0
mov eax, dword [0x10b33e60]
je 0x1013bf07
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x138]
jmp 0x1013bf1f
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x154]
movss xmm2, dword [eax + 0x134]
movss xmm3, dword [ecx + 0x58]
movss xmm4, dword [ecx + 0x5c]
movaps xmm0, xmm3
movss xmm5, dword [ecx + 0x60]
movaps xmm1, xmm4
mulss xmm0, xmm3
mulss xmm1, xmm4
movups xmmword [ebp - 0x130], xmm3
addss xmm0, xmm1
movss dword [ebp - 0xec], xmm4
movss dword [ebp - 0xf0], xmm5
call fcn.1000d460
maxss xmm0, dword [0x10271024]
xor eax, eax
mov dword [ebp - 0xe4], 0xe
mov dword [ebp - 0xdc], eax
lea ecx, [ebp - 0xdc]
divss xmm0, xmm2
mulss xmm0, dword [0x102710e8]
subss xmm0, dword [0x10271024]
cvttss2si edx, xmm0
test edx, edx
cmovs edx, eax
lea eax, [ebp - 0xe0]
test edx, edx
mov dword [ebp - 0xe0], edx
cmovns ecx, eax
cmp edx, 0xe
lea eax, [ebp - 0xe4]
cmovle eax, ecx
mov eax, dword [eax]
mov dword [ebp - 0xe8], eax
test eax, eax
jne 0x1013bfda
mov ecx, dword [ebp - 0xd8]
movq xmm0, qword [edi + 0x24]
movq qword [ecx + 0x24], xmm0
mov eax, dword [edi + 0x2c]
jmp 0x1013d1e7
xor edi, edi
mov dword [ebp - 0xac], edi
test eax, eax
jle 0x1013d1b6
nop word [eax + eax]
mov edx, dword [0x10b33e60]
lea eax, [edi + 1]
add edx, 0x7a4232c8
movd xmm0, eax
mov eax, dword [ebp - 0xb0]
xor edx, 0xfcb4fca8
cvtdq2ps xmm0, xmm0
mov ecx, dword [edx + 0x108]
movaps xmm6, xmm3
movaps xmm7, xmm4
mulss xmm0, dword [ecx + 0x20]
mulss xmm6, xmm0
mulss xmm7, xmm0
mulss xmm5, xmm0
movaps xmm2, xmm6
addss xmm2, dword [eax + 0x24]
movaps xmm1, xmm7
movss dword [ebp - 0x90], xmm6
addss xmm1, dword [eax + 0x28]
movaps xmm0, xmm5
movss dword [ebp - 0x94], xmm7
addss xmm0, dword [eax + 0x2c]
movss dword [ebp - 0xd4], xmm2
movss dword [ebp - 0x88], xmm5
movss dword [ebp - 0xd0], xmm1
movss dword [ebp - 0xbc], xmm6
movss dword [ebp - 0xcc], xmm0
mov eax, dword [edx + 0x14c]
mov dword [ebp - 0x7c], eax
mov eax, dword [0x10320228]
movss dword [ebp - 0xb8], xmm7
movss dword [ebp - 0xb4], xmm5
test al, 1
jne 0x1013c22a
or eax, 1
mov dword [0x10320228], eax
mov dword [ebp - 4], 1
mov ecx, dword [0x1031cd84]
cmp esi, ecx
je 0x1013c120
mov eax, esi
mov dword [ebp - 0x78], esi
cmp eax, ecx
je 0x1013c120
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x8c], ecx
test ecx, ecx
je 0x1013c10f
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1013c0e6
xor edx, edx
test ecx, ecx
je 0x1013c10f
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c0f3
cmp edi, 0x72e242a1
je 0x1013c133
mov eax, dword [ebp - 0x78]
add eax, 4
mov dword [ebp - 0x78], eax
cmp eax, dword [0x1031cd84]
jne 0x1013c0d0
mov esi, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e930], eax
jmp 0x1013c22f
mov eax, dword [ebp - 0x8c]
xor edi, edi
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x78], edi
cmp dword [eax + 4], edi
jle 0x1013c217
xor ecx, ecx
mov dword [ebp - 0x74], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1013c18a
cmp dword [ecx + 4], 0
jle 0x1013c18a
push 0
mov edx, 0xa4a37590
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013c184
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x80], edi
mov eax, dword [ebp - 0x8c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1013c193
xor edx, edx
test ecx, ecx
je 0x1013c1bf
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c1a0
cmp edi, 0xa4a37590
je 0x1013c1f4
mov eax, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x80]
add ecx, 0x3c
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x1013c150
mov esi, dword [0x1031cd80]
mov eax, edi
mov dword [ebp - 0x74], esi
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1013c22f
mov eax, dword [ebp - 0x84]
mov esi, dword [0x1031cd80]
mov dword [ebp - 0x74], esi
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x80]
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1013c22f
mov esi, dword [ebp - 0x74]
mov eax, edi
mov dword [0x1031e930], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1013c22f
mov eax, dword [0x1031e930]
mov ecx, dword [ebp - 0x7c]
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 0x1013c27a
or eax, 1
mov dword [0x110119e8], eax
mov edx, dword [ecx + 0x204]
mov dword [0x11011a10], edx
jmp 0x1013c280
mov edx, dword [0x11011a10]
test al, 2
jne 0x1013c297
or eax, 2
mov dword [0x110119e8], eax
mov eax, dword [ecx + 0x234]
mov dword [0x110119fc], eax
cmp byte [ebp - 0x95], 0
jne 0x1013c2da
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 0x1013c35c
mov eax, dword [0x10320228]
test al, 1
jne 0x1013c35c
or eax, 1
mov dword [0x10320228], eax
mov dword [ebp - 4], 2
cmp esi, dword [0x1031cd84]
je 0x1013c34e
nop word [eax + eax]
mov eax, dword [esi]
mov dword [ebp - 0x80], eax
test eax, eax
je 0x1013c340
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013c313
xor edx, edx
test ecx, ecx
je 0x1013c33d
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c320
cmp edi, 0x72e242a1
je 0x1013c4d5
mov esi, dword [ebp - 0x74]
add esi, 4
mov dword [ebp - 0x74], esi
cmp esi, dword [0x1031cd84]
jne 0x1013c300
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 - 0x118], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
unpcklps xmm0, xmm4
movq qword [ebp - 0xd4], xmm0
xor eax, 0xfcb4fca8
movq qword [ebp - 0x120], 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 - 0xfc], 0x1026b070
call fcn.101e132f
mov dword [ebp - 0xf4], eax
add esp, 4
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xf8], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x110]
mov dword [ebp - 0xa0], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x9c], eax
mov eax, dword [0x10320194]
test al, 1
jne 0x1013c688
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 0x1013c4be
mov dword [ebp - 0x7c], eax
mov ecx, dword [eax]
mov dword [ebp - 0x80], ecx
test ecx, ecx
je 0x1013c4b0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013c480
xor edx, edx
test ecx, ecx
je 0x1013c4b0
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c490
cmp edi, 0x1eee87cc
je 0x1013c590
mov eax, dword [ebp - 0x7c]
add eax, 4
mov dword [ebp - 0x7c], eax
cmp eax, dword [0x1031cd84]
jne 0x1013c467
mov eax, dword [ebp - 0x74]
xor ecx, ecx
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013c696
mov eax, dword [ebp - 0x80]
xor edi, edi
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x78], edi
cmp dword [eax + 4], edi
jle 0x1013c578
xor ecx, ecx
mov dword [ebp - 0x7c], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1013c527
cmp dword [ecx + 4], 0
jle 0x1013c527
push 0
mov edx, 0xa4a37590
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013c524
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x74], edi
mov eax, dword [ebp - 0x80]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013c530
xor edx, edx
test ecx, ecx
je 0x1013c55c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c540
cmp edi, 0xa4a37590
je 0x1013c57f
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x7c]
inc edx
mov edi, dword [ebp - 0x74]
add ecx, 0x3c
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x7c], ecx
cmp edx, dword [eax + 4]
jl 0x1013c4f0
mov eax, edi
jmp 0x1013c350
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x74]
jmp 0x1013c350
mov eax, dword [ebp - 0x80]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x7c], edi
cmp dword [eax + 4], edi
jle 0x1013c674
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 0x1013c5e7
cmp dword [ecx + 4], 0
jle 0x1013c5e7
push 0
mov edx, 0x7d388d3e
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013c5e4
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x80]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013c5f0
xor edx, edx
test ecx, ecx
je 0x1013c61c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c600
cmp edi, 0x7d388d3e
je 0x1013c651
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x1013c5b0
mov eax, dword [0x1031cd80]
mov ecx, edi
mov dword [ebp - 0x74], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013c696
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 0x1013c696
mov eax, dword [ebp - 0x74]
mov ecx, edi
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013c696
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031e960]
mov dword [ebp - 0x74], eax
add ecx, dword [ebp - 0x8c]
mov dword [ebp - 0xa8], ecx
mov ecx, dword [0x1031e928]
test cl, 1
jne 0x1013c7f5
or ecx, 1
mov dword [0x1031e928], ecx
mov dword [ebp - 4], 4
cmp eax, dword [0x1031cd84]
je 0x1013c71a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x78], ecx
test ecx, ecx
je 0x1013c70c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013c6e3
xor edx, edx
test ecx, ecx
je 0x1013c70c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c6f0
cmp edi, 0x1eee87cc
je 0x1013c72d
mov eax, dword [ebp - 0x74]
add eax, 4
mov dword [ebp - 0x74], eax
cmp eax, dword [0x1031cd84]
jne 0x1013c6d0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1013c7fa
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x7c], edi
cmp dword [eax + 4], edi
jle 0x1013c7cb
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 0x1013c77d
cmp dword [ecx + 4], 0
jle 0x1013c77d
push 0
mov edx, 0xe57f80c
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013c77a
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x80], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013c786
xor edx, edx
test ecx, ecx
je 0x1013c7af
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013c793
cmp edi, 0xe57f80c
je 0x1013c7db
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x80]
add ecx, 0x3c
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x1013c746
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1013c7fa
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x80]
mov dword [0x1031e940], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1013c7fa
mov eax, dword [0x1031e940]
push dword [ebp - 0xa8]
add eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x180]
push eax
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.1004cc20
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0xfc]
push ecx
mov ecx, dword [ebp - 0xa0]
push 0x201400b
push eax
call dword [ebp - 0x9c]
movss xmm3, dword [ebp - 0x44]
ucomiss xmm3, dword [0x10271024]
lahf
test ah, 0x44
jnp 0x1013cd72
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]
addss xmm2, xmm0
movss xmm3, dword [ebp - 0x90]
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 dword [ebp - 0xbc], xmm0
movss xmm0, dword [ebp - 0x94]
subss xmm0, xmm1
movss dword [ebp - 0x88], xmm7
movss dword [ebp - 0xb4], xmm7
mulss xmm2, xmm0
movss dword [ebp - 0x94], xmm0
movss dword [ebp - 0xb8], xmm0
movaps xmm0, xmm5
mulss xmm0, 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 0x1013c987
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 0x1013c98f
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 - 0x10c], xmm1
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0xc0], eax
mov eax, dword [ecx + 0x110]
mov dword [ebp - 0xa8], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xa4], eax
mov eax, dword [0x10320194]
test al, 1
jne 0x1013cb98
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 0x1013ca8e
mov dword [ebp - 0x7c], eax
mov ecx, dword [eax]
mov dword [ebp - 0x78], ecx
test ecx, ecx
je 0x1013ca80
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013ca57
xor edx, edx
test ecx, ecx
je 0x1013ca80
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013ca64
cmp edi, 0x1eee87cc
je 0x1013caa5
mov eax, dword [ebp - 0x7c]
add eax, 4
mov dword [ebp - 0x7c], eax
cmp eax, dword [0x1031cd84]
jne 0x1013ca44
mov eax, dword [ebp - 0x74]
xor ecx, ecx
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cba6
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x7c], edi
cmp dword [eax + 4], edi
jle 0x1013cb84
xor ecx, ecx
mov dword [ebp - 0x74], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x9c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1013caf7
cmp dword [ecx + 4], 0
jle 0x1013caf7
push 0
mov edx, 0x7d388d3e
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013caf4
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x80], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013cb00
xor edx, edx
test ecx, ecx
je 0x1013cb2c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013cb10
cmp edi, 0x7d388d3e
je 0x1013cb61
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x80]
add ecx, 0x3c
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x1013cac0
mov eax, dword [0x1031cd80]
mov ecx, edi
mov dword [ebp - 0x74], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cba6
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x80]
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x74], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cba6
mov eax, dword [ebp - 0x74]
mov ecx, edi
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cba6
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 0x1013cd05
or ecx, 1
mov dword [0x1031e928], ecx
mov dword [ebp - 4], 6
cmp eax, dword [0x1031cd84]
je 0x1013cc2a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x78], ecx
test ecx, ecx
je 0x1013cc1c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013cbf3
xor edx, edx
test ecx, ecx
je 0x1013cc1c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013cc00
cmp edi, 0x1eee87cc
je 0x1013cc3d
mov eax, dword [ebp - 0x74]
add eax, 4
mov dword [ebp - 0x74], eax
cmp eax, dword [0x1031cd84]
jne 0x1013cbe0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1013cd0a
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x7c], edi
cmp dword [eax + 4], edi
jle 0x1013ccdb
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 0x1013cc8d
cmp dword [ecx + 4], 0
jle 0x1013cc8d
push 0
mov edx, 0xe57f80c
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013cc8a
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x80], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013cc96
xor edx, edx
test ecx, ecx
je 0x1013ccbf
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013cca3
cmp edi, 0xe57f80c
je 0x1013cceb
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x80]
add ecx, 0x3c
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x1013cc56
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1013cd0a
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x80]
mov dword [0x1031e940], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cd0a
mov eax, dword [0x1031e940]
push dword [ebp - 0xa0]
add eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x180]
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 - 0xfc]
push ecx
mov ecx, dword [ebp - 0xa8]
push 0x201400b
push eax
call dword [ebp - 0xa4]
movss xmm3, dword [ebp - 0x44]
ucomiss xmm3, dword [0x10271024]
lahf
test ah, 0x44
jnp 0x1013cd72
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp eax, 2
jl 0x1013c860
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 - 0xa0], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xa8], eax
mov eax, dword [0x10320194]
test al, 1
jne 0x1013cf7a
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 0x1013ce55
mov dword [ebp - 0x84], eax
mov ecx, dword [eax]
mov dword [ebp - 0x88], ecx
test ecx, ecx
je 0x1013ce44
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1013ce18
xor edx, edx
test ecx, ecx
je 0x1013ce44
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013ce25
cmp edi, 0x1eee87cc
je 0x1013ce6f
mov eax, dword [ebp - 0x84]
add eax, 4
mov dword [ebp - 0x84], eax
cmp eax, dword [0x1031cd84]
jne 0x1013ce02
mov eax, dword [ebp - 0x90]
xor ecx, ecx
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cf8b
mov eax, dword [ebp - 0x88]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x84], edi
cmp dword [eax + 4], edi
jle 0x1013cf63
xor ecx, ecx
mov dword [ebp - 0x7c], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa4], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1013ceca
cmp dword [ecx + 4], 0
jle 0x1013ceca
push 0
mov edx, 0x7d388d3e
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013cec4
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 0x1013ced3
xor edx, edx
test ecx, ecx
je 0x1013ceff
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013cee0
cmp edi, 0x7d388d3e
je 0x1013cf3d
mov eax, dword [ebp - 0x88]
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x7c]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x7c], ecx
cmp edx, dword [eax + 4]
jl 0x1013ce90
mov eax, dword [0x1031cd80]
mov ecx, edi
mov dword [ebp - 0x90], eax
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cf8b
mov eax, dword [ebp - 0xa4]
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 0x1013cf8b
mov eax, dword [ebp - 0x90]
mov ecx, edi
mov dword [0x1031e960], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1013cf8b
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 0x1013d100
or ecx, 1
mov dword [0x1031e928], ecx
mov dword [ebp - 4], 8
cmp eax, dword [0x1031cd84]
je 0x1013d013
nop
mov ecx, dword [eax]
mov dword [ebp - 0x88], ecx
test ecx, ecx
je 0x1013d002
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1013cfd6
xor edx, edx
test ecx, ecx
je 0x1013d002
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013cfe3
cmp edi, 0x1eee87cc
je 0x1013d026
mov eax, dword [ebp - 0x90]
add eax, 4
mov dword [ebp - 0x90], eax
cmp eax, dword [0x1031cd84]
jne 0x1013cfc0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1013d105
mov eax, dword [ebp - 0x88]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x84], edi
cmp dword [eax + 4], edi
jle 0x1013d0d6
xor ecx, ecx
mov dword [ebp - 0x7c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa4], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1013d07f
cmp dword [ecx + 4], 0
jle 0x1013d07f
push 0
mov edx, 0xe57f80c
call fcn.1012b660
add esp, 4
test eax, eax
je 0x1013d079
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 0x1013d088
xor edx, edx
test ecx, ecx
je 0x1013d0b4
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1013d095
cmp edi, 0xe57f80c
je 0x1013d0e6
mov eax, dword [ebp - 0x88]
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x7c]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x7c], ecx
cmp edx, dword [eax + 4]
jl 0x1013d045
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1031e940], eax
jmp 0x1013d105
mov eax, dword [ebp - 0xa4]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x78]
mov dword [0x1031e940], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1013d105
mov eax, dword [0x1031e940]
push dword [ebp - 0x9c]
add eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x180]
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 - 0xfc]
push ecx
mov ecx, dword [ebp - 0xa0]
push 0x201400b
push eax
call dword [ebp - 0xa8]
mov edi, dword [ebp - 0xac]
movq xmm0, qword [ebp - 0xbc]
inc edi
mov eax, dword [ebp - 0xb4]
movq qword [ebp - 0x108], xmm0
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xac], edi
cmp edi, dword [ebp - 0xe8]
jge 0x1013d19e
mov esi, dword [0x1031cd80]
movups xmm3, xmmword [ebp - 0x130]
mov dword [ebp - 0x74], esi
movss xmm4, dword [ebp - 0xec]
movss xmm5, dword [ebp - 0xf0]
jmp 0x1013bff0
movss xmm5, dword [ebp - 0x100]
movss xmm4, dword [ebp - 0x104]
movss xmm3, dword [ebp - 0x108]
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xd8]
addss xmm3, dword [eax + 0x24]
addss xmm4, dword [eax + 0x28]
addss xmm5, dword [eax + 0x2c]
unpcklps xmm3, xmm4
movss dword [ebp - 0x10c], xmm5
mov eax, dword [ebp - 0x10c]
movq qword [ecx + 0x24], xmm3
mov dword [ecx + 0x2c], eax
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