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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101f1981
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x58
push esi
push edi
mov eax, dword [0x10285040]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x18], edi
mov esi, dword [ebx + 8]
mov eax, 0x1b4e81b5
imul esi
mov ecx, esi
mov byte [edi + 0x4650], 0
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x96
sub ecx, eax
mov edx, ecx
shl edx, 4
sub edx, ecx
mov dword [ebp - 0x14], edx
cmp dword [edi + edx*8 + 4], esi
jne 0x10135869
mov eax, dword [0x10b33e60]
mov ecx, dword [0x1031e944]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x2c], eax
test cl, 1
jne 0x10134980
or ecx, 1
mov dword [0x1031e944], ecx
mov dword [ebp - 4], 0
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1031cd84]
je 0x101348aa
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1013489c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x10134873
xor edx, edx
test ecx, ecx
je 0x1013489c
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10134880
cmp esi, 0x4e9f1122
je 0x101348ca
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1031cd84]
jne 0x10134860
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov dword [0x103201bc], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10134989
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10134968
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10134917
cmp dword [ecx + 4], 0
jle 0x10134917
push 0
mov edx, 0x1e948cb9
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10134914
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10134920
xor edx, edx
test ecx, ecx
je 0x1013494c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134930
cmp edi, 0x1e948cb9
je 0x10134972
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jl 0x101348e3
mov ecx, edi
mov dword [ebp - 0x24], edi
jmp 0x101348af
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x20]
jmp 0x101348ac
mov ecx, dword [0x103201bc]
mov dword [ebp - 0x24], ecx
movss xmm0, dword [edi + edx*8 + 0x18]
subss xmm0, dword [eax + ecx]
movss xmm3, dword [edi + edx*8 + 0x1c]
subss xmm3, dword [eax + ecx + 4]
movss xmm4, dword [edi + edx*8 + 0x20]
subss xmm4, dword [eax + ecx + 8]
mov eax, dword [0x10b33e60]
mov ecx, dword [0x1031e970]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x2c], eax
test cl, 1
jne 0x10134b0c
or ecx, 1
mov dword [0x1031e970], ecx
mov dword [ebp - 4], 1
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1031cd84]
je 0x10134a3d
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x10134a2f
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10134a06
xor edx, edx
test ecx, ecx
je 0x10134a2f
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134a13
cmp edi, 0x4e9f1122
je 0x10134a5d
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1031cd84]
jne 0x101349f3
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov dword [0x1031e934], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10134b15
mov eax, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10134af4
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10134aaa
cmp dword [ecx + 4], 0
jle 0x10134aaa
push 0
mov edx, 0xcc13b533
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10134aa7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x20]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10134ab3
xor edx, edx
test ecx, ecx
je 0x10134adc
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134ac0
cmp edi, 0xcc13b533
je 0x10134afe
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jl 0x10134a76
mov ecx, edi
mov dword [ebp - 0x28], edi
jmp 0x10134a42
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10134a3f
mov ecx, dword [0x1031e934]
mov dword [ebp - 0x28], ecx
movss xmm6, dword [edi + edx*8 + 0x24]
subss xmm6, dword [eax + ecx]
movss xmm7, dword [edi + edx*8 + 0x28]
subss xmm7, dword [eax + ecx + 4]
movss xmm1, dword [edi + edx*8 + 0x2c]
subss xmm1, dword [eax + ecx + 8]
mov eax, dword [0x10b33e60]
mov ecx, dword [0x10320204]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
movss dword [ebp - 0x54], xmm1
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x3c], eax
test cl, 1
jne 0x10134c9e
or ecx, 1
mov dword [0x10320204], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1031cd84]
je 0x10134bce
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x10134bc0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10134b97
xor edx, edx
test ecx, ecx
je 0x10134bc0
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134ba4
cmp edi, 0x4e9f1122
je 0x10134bee
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1031cd84]
jne 0x10134b84
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov dword [0x103201e4], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10134ca7
mov ecx, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x10134c86
xor eax, eax
mov dword [ebp - 0x20], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x38], esi
test ecx, ecx
je 0x10134c3c
cmp dword [ecx + 4], 0
jle 0x10134c3c
push 0
mov edx, 0xb30de0ec
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10134c39
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x20]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10134c45
xor edx, edx
test ecx, ecx
je 0x10134c6e
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134c52
cmp edi, 0xb30de0ec
je 0x10134c90
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
add eax, 0x3c
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], eax
cmp edx, dword [ecx + 4]
jl 0x10134c07
mov ecx, edi
mov dword [ebp - 0x2c], edi
jmp 0x10134bd3
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10134bd0
mov ecx, dword [0x103201e4]
mov dword [ebp - 0x2c], ecx
movss xmm1, dword [edi + edx*8 + 0x30]
subss xmm1, dword [eax + ecx]
movss dword [ebp - 0x60], xmm1
movss xmm1, dword [edi + edx*8 + 0x34]
subss xmm1, dword [eax + ecx + 4]
movss dword [ebp - 0x64], xmm1
movss xmm1, dword [edi + edx*8 + 0x38]
subss xmm1, dword [eax + ecx + 8]
mov eax, dword [0x10b33e60]
mov ecx, dword [0x103201d8]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
movss dword [ebp - 0x68], xmm1
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x38], eax
test cl, 1
jne 0x10134e3e
or ecx, 1
mov dword [0x103201d8], ecx
mov dword [ebp - 4], 3
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10134d6e
mov edx, dword [eax]
mov dword [ebp - 0x30], edx
test edx, edx
je 0x10134d64
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10134d35
xor edx, edx
test ecx, ecx
je 0x10134d5e
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134d42
cmp edi, 0x4e9f1122
je 0x10134d8e
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x1031cd84]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, ecx
jne 0x10134d22
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x38]
mov edi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov dword [0x10320198], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10134e47
mov ecx, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x10134e26
xor eax, eax
mov dword [ebp - 0x20], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x3c], esi
test ecx, ecx
je 0x10134ddc
cmp dword [ecx + 4], 0
jle 0x10134ddc
push 0
mov edx, 0x4cdd3467
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10134dd9
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x20]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10134de5
xor edx, edx
test ecx, ecx
je 0x10134e0e
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134df2
cmp edi, 0x4cdd3467
je 0x10134e30
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
add eax, 0x3c
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], eax
cmp edx, dword [ecx + 4]
jl 0x10134da7
mov ecx, edi
mov dword [ebp - 0x30], edi
jmp 0x10134d73
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10134d70
mov ecx, dword [0x10320198]
mov dword [ebp - 0x30], ecx
movss xmm5, dword [edi + edx*8 + 0x44]
subss xmm5, dword [eax + ecx + 8]
mov eax, dword [0x10b33e60]
mov ecx, dword [0x103201a4]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x48], eax
test cl, 1
jne 0x10134fbc
or ecx, 1
mov dword [0x103201a4], ecx
mov dword [ebp - 4], 4
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10134eec
mov edx, dword [eax]
mov dword [ebp - 0x38], edx
test edx, edx
je 0x10134ee2
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10134eb3
xor edx, edx
test ecx, ecx
je 0x10134edc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134ec0
cmp edi, 0x72e242a1
je 0x10134f0c
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x1031cd84]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, ecx
jne 0x10134ea0
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov edi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x48]
mov dword [0x10320240], ecx
jmp 0x10134fc5
mov ecx, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x10134fa4
xor eax, eax
mov dword [ebp - 0x20], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x3c], esi
test ecx, ecx
je 0x10134f5a
cmp dword [ecx + 4], 0
jle 0x10134f5a
push 0
mov edx, 0x6d8d7d9d
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10134f57
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x20]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10134f63
xor edx, edx
test ecx, ecx
je 0x10134f8c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10134f70
cmp edi, 0x6d8d7d9d
je 0x10134fae
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
add eax, 0x3c
mov ecx, dword [ebp - 0x38]
inc edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], eax
cmp edx, dword [ecx + 4]
jl 0x10134f25
mov ecx, edi
mov dword [ebp - 0x34], edi
jmp 0x10134ef1
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10134eee
mov ecx, dword [0x10320240]
mov dword [ebp - 0x34], ecx
movss xmm2, dword [edi + edx*8 + 0xc]
subss xmm2, dword [eax + ecx]
call fcn.1000d440
movss xmm1, dword [0x10270ef8]
comiss xmm1, xmm0
jb 0x1013519f
movaps xmm0, xmm3
call fcn.1000d440
comiss xmm1, xmm0
jb 0x1013519f
movaps xmm0, xmm4
call fcn.1000d440
comiss xmm1, xmm0
jb 0x1013519f
mov eax, dword [edi + edx*8 + 0x20]
mov ecx, dword [0x1031e944]
movq xmm0, qword [edi + edx*8 + 0x18]
mov dword [ebp - 0x50], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x3c], eax
test cl, 1
jne 0x1013518b
or ecx, 1
mov dword [0x1031e944], ecx
mov dword [ebp - 4], 5
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x101350ae
mov edx, dword [eax]
mov dword [ebp - 0x24], edx
test edx, edx
je 0x101350a4
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10135075
xor edx, edx
test ecx, ecx
je 0x1013509e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10135082
cmp edi, 0x4e9f1122
je 0x101350d7
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x1031cd84]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x10135062
xor edi, edi
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
movq qword [eax + edi], xmm0
mov dword [0x103201bc], edi
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x101351a6
mov ecx, dword [ebp - 0x24]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x38], edi
cmp dword [ecx + 4], edi
jle 0x101350b0
xor eax, eax
mov dword [ebp - 0x20], eax
nop dword [eax]
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x48], esi
test ecx, ecx
je 0x10135125
cmp dword [ecx + 4], 0
jle 0x10135125
push 0
mov edx, 0x1e948cb9
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10135122
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x20]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x10135130
xor edx, edx
test ecx, ecx
je 0x1013515c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10135140
cmp edi, 0x1e948cb9
je 0x1013517d
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x38]
add eax, 0x3c
mov ecx, dword [ebp - 0x24]
inc edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x20], eax
cmp edx, dword [ecx + 4]
jge 0x101350b0
jmp 0x101350f0
mov eax, dword [ebp - 0x48]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x1c]
jmp 0x101350b0
mov edi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x50]
movq qword [eax + edi], xmm0
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x101351a6
mov byte [edi + 0x4650], 1
movaps xmm0, xmm6
call fcn.1000d440
comiss xmm1, xmm0
jb 0x1013536f
movaps xmm0, xmm7
call fcn.1000d440
comiss xmm1, xmm0
jb 0x1013536f
movss xmm0, dword [ebp - 0x54]
call fcn.1000d440
comiss xmm1, xmm0
jb 0x1013536f
mov eax, dword [edi + edx*8 + 0x2c]
mov ecx, dword [0x1031e970]
movq xmm0, qword [edi + edx*8 + 0x24]
mov dword [ebp - 0x48], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x50], eax
test cl, 1
jne 0x1013535b
or ecx, 1
mov dword [0x1031e970], ecx
mov dword [ebp - 4], 6
mov eax, dword [0x1031cd80]
mov ecx, dword [0x1031cd84]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x10135281
mov edx, dword [eax]
mov dword [ebp - 0x28], edx
test edx, edx
je 0x10135277
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10135248
xor edx, edx
test ecx, ecx
je 0x10135271
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10135255
cmp edi, 0x4e9f1122
je 0x101352aa
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x1031cd84]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x10135235
xor edi, edi
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x48]
mov dword [0x1031e934], edi
movq qword [eax + edi], xmm0
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10135376
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x38], edi
cmp dword [ecx + 4], edi
jle 0x10135283
xor eax, eax
mov dword [ebp - 0x24], eax
nop
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x54], esi
test ecx, ecx
je 0x101352f5
cmp dword [ecx + 4], 0
jle 0x101352f5
push 0
mov edx, 0xcc13b533
call fcn.1012b660
add esp, 4
test eax, eax
je 0x101352f2
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [ebp - 0x24]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x10135300
xor edx, edx
test ecx, ecx
je 0x1013532c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10135310
cmp edi, 0xcc13b533
je 0x1013534d
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x38]
add eax, 0x3c
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x24], eax
cmp edx, dword [ecx + 4]
jge 0x10135283
jmp 0x101352c0
mov eax, dword [ebp - 0x54]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x20]
jmp 0x10135283
mov edi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x48]
movq qword [eax + edi], xmm0
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10135376
mov byte [edi + 0x4650], 1
movss xmm0, dword [ebp - 0x60]
call fcn.1000d440
comiss xmm1, xmm0
jb 0x10135541
movss xmm0, dword [ebp - 0x64]
call fcn.1000d440
comiss xmm1, xmm0
jbe 0x10135541
movss xmm0, dword [ebp - 0x68]
call fcn.1000d440
comiss xmm1, xmm0
jb 0x10135541
mov eax, dword [edi + edx*8 + 0x38]
mov ecx, dword [0x10320204]
movq xmm0, qword [edi + edx*8 + 0x30]
mov dword [ebp - 0x60], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x1013552d
or ecx, 1
mov dword [0x10320204], ecx
mov dword [ebp - 4], 7
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1031cd84]
je 0x1013545a
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1013544c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10135420
xor edx, edx
test ecx, ecx
je 0x1013544c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10135430
cmp edi, 0x4e9f1122
je 0x10135483
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1031cd84]
jne 0x10135407
xor edi, edi
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x60]
movq qword [eax + edi], xmm0
mov dword [0x103201e4], edi
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10135548
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1013545c
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x68], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x101354cc
cmp dword [ecx + 4], 0
jle 0x101354cc
push 0
mov edx, 0xb30de0ec
call fcn.1012b660
add esp, 4
test eax, eax
je 0x101354c9
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x101354d5
xor edx, edx
test ecx, ecx
je 0x101354fe
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101354e2
cmp edi, 0xb30de0ec
je 0x1013551f
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x2c], ecx
cmp edx, dword [eax + 4]
jge 0x1013545c
jmp 0x10135498
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
jmp 0x1013545c
mov edi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x60]
movq qword [eax + edi], xmm0
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10135548
mov byte [edi + 0x4650], 1
movaps xmm0, xmm5
call fcn.1000d440
movss xmm1, dword [0x10270f18]
comiss xmm1, xmm0
jb 0x101356ea
mov eax, dword [edi + edx*8 + 0x44]
mov ecx, dword [0x103201d8]
movq xmm0, qword [edi + edx*8 + 0x3c]
mov dword [ebp - 0x60], eax
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x101356db
or ecx, 1
mov dword [0x103201d8], ecx
mov dword [ebp - 4], 8
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1031cd84]
je 0x1013560a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x101355fc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x101355d3
xor edx, edx
test ecx, ecx
je 0x101355fc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101355e0
cmp edi, 0x4e9f1122
je 0x10135624
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1031cd84]
jne 0x101355c0
xor edi, edi
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x14]
mov dword [0x10320198], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x101356de
mov eax, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1013560c
xor ecx, ecx
mov dword [ebp - 0x30], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x68], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10135674
cmp dword [ecx + 4], 0
jle 0x10135674
push 0
mov edx, 0x4cdd3467
call fcn.1012b660
add esp, 4
test eax, eax
je 0x10135671
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x28], edi
mov eax, dword [ebp - 0x2c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10135680
xor edx, edx
test ecx, ecx
je 0x101356ac
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10135690
cmp edi, 0x4cdd3467
je 0x101356cd
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x30]
inc edx
mov edi, dword [ebp - 0x28]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x30], ecx
cmp edx, dword [eax + 4]
jge 0x1013560c
jmp 0x10135640
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x28]
jmp 0x1013560c
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x60]
movq qword [eax + edi], xmm0
mov dword [eax + edi + 8], ecx
movaps xmm0, xmm2
call fcn.1000d440
movss xmm1, dword [0x10270fb4]
comiss xmm1, xmm0
jb 0x10135869
mov eax, dword [ebp - 0x18]
mov ecx, dword [0x103201a4]
movss xmm0, dword [eax + edx*8 + 0xc]
mov eax, dword [0x10b33e60]
add eax, 0x7a4232c8
xor eax, 0xfcb4fca8
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x10135861
or ecx, 1
mov dword [0x103201a4], ecx
mov dword [ebp - 4], 9
mov eax, dword [0x1031cd80]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1031cd84]
je 0x1013579d
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x1013578f
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10135766
xor edx, edx
test ecx, ecx
je 0x1013578f
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10135773
cmp esi, 0x72e242a1
je 0x101357ad
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1031cd84]
jne 0x10135753
xor edi, edi
mov eax, dword [ebp - 0x64]
mov dword [0x10320240], edi
jmp 0x10135864
mov eax, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1013579f
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x68], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x101357f6
cmp dword [ecx + 4], 0
jle 0x101357f6
push 0
mov edx, 0x6d8d7d9d
call fcn.1012b660
add esp, 4
test eax, eax
je 0x101357f3
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x2c], edi
mov eax, dword [ebp - 0x30]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop
inc ecx
cmp byte [ecx + edi], 0
jne 0x10135800
xor edx, edx
test ecx, ecx
je 0x1013582c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10135810
cmp esi, 0x6d8d7d9d
je 0x1013584d
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x2c]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1013579f
jmp 0x101357c2
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x64]
mov dword [0x10320240], edi
jmp 0x10135864
mov edi, dword [ebp - 0x34]
movss dword [eax + edi], 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 4