Function at 0x101459d0
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 0x10274441
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x58
push esi
push edi
mov eax, dword [0x103230ac]
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 0x10146a99
mov eax, dword [0x10c0dd10]
mov ecx, dword [0x103c231c]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x2c], eax
test cl, 1
jne 0x10145bb0
or ecx, 1
mov dword [0x103c231c], ecx
mov dword [ebp - 4], 0
mov eax, dword [0x103bf630]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x103bf634]
je 0x10145ada
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10145acc
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10145aa3
xor edx, edx
test ecx, ecx
je 0x10145acc
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10145ab0
cmp esi, 0x4e9f1122
je 0x10145afa
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x103bf634]
jne 0x10145a90
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 [0x103c3b9c], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10145bb9
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10145b98
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 0x10145b47
cmp dword [ecx + 4], 0
jle 0x10145b47
push 0
mov edx, 0x1e948cb9
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10145b44
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x10145b50
xor edx, edx
test ecx, ecx
je 0x10145b7c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10145b60
cmp esi, 0x1e948cb9
je 0x10145ba2
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 0x10145b13
mov ecx, edi
mov dword [ebp - 0x24], edi
jmp 0x10145adf
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x20]
jmp 0x10145adc
mov ecx, dword [0x103c3b9c]
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 [0x10c0dd10]
mov ecx, dword [0x103c2348]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x2c], eax
test cl, 1
jne 0x10145d3c
or ecx, 1
mov dword [0x103c2348], ecx
mov dword [ebp - 4], 1
mov eax, dword [0x103bf630]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x103bf634]
je 0x10145c6d
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x10145c5f
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10145c36
xor edx, edx
test ecx, ecx
je 0x10145c5f
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10145c43
cmp edi, 0x4e9f1122
je 0x10145c8d
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x103bf634]
jne 0x10145c23
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 [0x103c230c], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10145d45
mov eax, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10145d24
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 0x10145cda
cmp dword [ecx + 4], 0
jle 0x10145cda
push 0
mov edx, 0xcc13b533
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10145cd7
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 0x10145ce3
xor edx, edx
test ecx, ecx
je 0x10145d0c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10145cf0
cmp edi, 0xcc13b533
je 0x10145d2e
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 0x10145ca6
mov ecx, edi
mov dword [ebp - 0x28], edi
jmp 0x10145c72
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10145c6f
mov ecx, dword [0x103c230c]
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 [0x10c0dd10]
mov ecx, dword [0x103c3be4]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
movss dword [ebp - 0x54], xmm1
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x3c], eax
test cl, 1
jne 0x10145ece
or ecx, 1
mov dword [0x103c3be4], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x103bf630]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x103bf634]
je 0x10145dfe
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x10145df0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10145dc7
xor edx, edx
test ecx, ecx
je 0x10145df0
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10145dd4
cmp edi, 0x4e9f1122
je 0x10145e1e
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x103bf634]
jne 0x10145db4
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 [0x103c3bc4], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10145ed7
mov ecx, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x10145eb6
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 0x10145e6c
cmp dword [ecx + 4], 0
jle 0x10145e6c
push 0
mov edx, 0xb30de0ec
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10145e69
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 0x10145e75
xor edx, edx
test ecx, ecx
je 0x10145e9e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10145e82
cmp edi, 0xb30de0ec
je 0x10145ec0
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 0x10145e37
mov ecx, edi
mov dword [ebp - 0x2c], edi
jmp 0x10145e03
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10145e00
mov ecx, dword [0x103c3bc4]
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 [0x10c0dd10]
mov ecx, dword [0x103c3bb8]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
movss dword [ebp - 0x68], xmm1
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x38], eax
test cl, 1
jne 0x1014606e
or ecx, 1
mov dword [0x103c3bb8], ecx
mov dword [ebp - 4], 3
mov eax, dword [0x103bf630]
mov ecx, dword [0x103bf634]
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10145f9e
mov edx, dword [eax]
mov dword [ebp - 0x30], edx
test edx, edx
je 0x10145f94
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10145f65
xor edx, edx
test ecx, ecx
je 0x10145f8e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10145f72
cmp edi, 0x4e9f1122
je 0x10145fbe
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x103bf634]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, ecx
jne 0x10145f52
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 [0x103c3b78], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10146077
mov ecx, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x10146056
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 0x1014600c
cmp dword [ecx + 4], 0
jle 0x1014600c
push 0
mov edx, 0x4cdd3467
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10146009
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 0x10146015
xor edx, edx
test ecx, ecx
je 0x1014603e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10146022
cmp edi, 0x4cdd3467
je 0x10146060
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 0x10145fd7
mov ecx, edi
mov dword [ebp - 0x30], edi
jmp 0x10145fa3
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10145fa0
mov ecx, dword [0x103c3b78]
mov dword [ebp - 0x30], ecx
movss xmm5, dword [edi + edx*8 + 0x44]
subss xmm5, dword [eax + ecx + 8]
mov eax, dword [0x10c0dd10]
mov ecx, dword [0x103c3b84]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x48], eax
test cl, 1
jne 0x101461ec
or ecx, 1
mov dword [0x103c3b84], ecx
mov dword [ebp - 4], 4
mov eax, dword [0x103bf630]
mov ecx, dword [0x103bf634]
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x1014611c
mov edx, dword [eax]
mov dword [ebp - 0x38], edx
test edx, edx
je 0x10146112
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x101460e3
xor edx, edx
test ecx, ecx
je 0x1014610c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101460f0
cmp edi, 0x72e242a1
je 0x1014613c
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x103bf634]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, ecx
jne 0x101460d0
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 [0x103c3c20], ecx
jmp 0x101461f5
mov ecx, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x101461d4
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 0x1014618a
cmp dword [ecx + 4], 0
jle 0x1014618a
push 0
mov edx, 0x6d8d7d9d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10146187
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 0x10146193
xor edx, edx
test ecx, ecx
je 0x101461bc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101461a0
cmp edi, 0x6d8d7d9d
je 0x101461de
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 0x10146155
mov ecx, edi
mov dword [ebp - 0x34], edi
jmp 0x10146121
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x1014611e
mov ecx, dword [0x103c3c20]
mov dword [ebp - 0x34], ecx
movss xmm2, dword [edi + edx*8 + 0xc]
subss xmm2, dword [eax + ecx]
call fcn.1000e030
movss xmm1, dword [0x1030b744]
comiss xmm1, xmm0
jb 0x101463cf
movaps xmm0, xmm3
call fcn.1000e030
comiss xmm1, xmm0
jb 0x101463cf
movaps xmm0, xmm4
call fcn.1000e030
comiss xmm1, xmm0
jb 0x101463cf
mov eax, dword [edi + edx*8 + 0x20]
mov ecx, dword [0x103c231c]
movq xmm0, qword [edi + edx*8 + 0x18]
mov dword [ebp - 0x50], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x3c], eax
test cl, 1
jne 0x101463bb
or ecx, 1
mov dword [0x103c231c], ecx
mov dword [ebp - 4], 5
mov eax, dword [0x103bf630]
mov ecx, dword [0x103bf634]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x101462de
mov edx, dword [eax]
mov dword [ebp - 0x24], edx
test edx, edx
je 0x101462d4
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x101462a5
xor edx, edx
test ecx, ecx
je 0x101462ce
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101462b2
cmp edi, 0x4e9f1122
je 0x10146307
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x103bf634]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x10146292
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 [0x103c3b9c], edi
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x101463d6
mov ecx, dword [ebp - 0x24]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x38], edi
cmp dword [ecx + 4], edi
jle 0x101462e0
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 0x10146355
cmp dword [ecx + 4], 0
jle 0x10146355
push 0
mov edx, 0x1e948cb9
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10146352
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 0x10146360
xor edx, edx
test ecx, ecx
je 0x1014638c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10146370
cmp edi, 0x1e948cb9
je 0x101463ad
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 0x101462e0
jmp 0x10146320
mov eax, dword [ebp - 0x48]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x1c]
jmp 0x101462e0
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 0x101463d6
mov byte [edi + 0x4650], 1
movaps xmm0, xmm6
call fcn.1000e030
comiss xmm1, xmm0
jb 0x1014659f
movaps xmm0, xmm7
call fcn.1000e030
comiss xmm1, xmm0
jb 0x1014659f
movss xmm0, dword [ebp - 0x54]
call fcn.1000e030
comiss xmm1, xmm0
jb 0x1014659f
mov eax, dword [edi + edx*8 + 0x2c]
mov ecx, dword [0x103c2348]
movq xmm0, qword [edi + edx*8 + 0x24]
mov dword [ebp - 0x48], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x50], eax
test cl, 1
jne 0x1014658b
or ecx, 1
mov dword [0x103c2348], ecx
mov dword [ebp - 4], 6
mov eax, dword [0x103bf630]
mov ecx, dword [0x103bf634]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x101464b1
mov edx, dword [eax]
mov dword [ebp - 0x28], edx
test edx, edx
je 0x101464a7
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10146478
xor edx, edx
test ecx, ecx
je 0x101464a1
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10146485
cmp edi, 0x4e9f1122
je 0x101464da
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x103bf634]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x10146465
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 [0x103c230c], edi
movq qword [eax + edi], xmm0
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x101465a6
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x38], edi
cmp dword [ecx + 4], edi
jle 0x101464b3
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 0x10146525
cmp dword [ecx + 4], 0
jle 0x10146525
push 0
mov edx, 0xcc13b533
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10146522
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 0x10146530
xor edx, edx
test ecx, ecx
je 0x1014655c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10146540
cmp edi, 0xcc13b533
je 0x1014657d
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 0x101464b3
jmp 0x101464f0
mov eax, dword [ebp - 0x54]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x20]
jmp 0x101464b3
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 0x101465a6
mov byte [edi + 0x4650], 1
movss xmm0, dword [ebp - 0x60]
call fcn.1000e030
comiss xmm1, xmm0
jb 0x10146771
movss xmm0, dword [ebp - 0x64]
call fcn.1000e030
comiss xmm1, xmm0
jbe 0x10146771
movss xmm0, dword [ebp - 0x68]
call fcn.1000e030
comiss xmm1, xmm0
jb 0x10146771
mov eax, dword [edi + edx*8 + 0x38]
mov ecx, dword [0x103c3be4]
movq xmm0, qword [edi + edx*8 + 0x30]
mov dword [ebp - 0x60], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x1014675d
or ecx, 1
mov dword [0x103c3be4], ecx
mov dword [ebp - 4], 7
mov eax, dword [0x103bf630]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x103bf634]
je 0x1014668a
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1014667c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10146650
xor edx, edx
test ecx, ecx
je 0x1014667c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10146660
cmp edi, 0x4e9f1122
je 0x101466b3
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x103bf634]
jne 0x10146637
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 [0x103c3bc4], edi
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10146778
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1014668c
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 0x101466fc
cmp dword [ecx + 4], 0
jle 0x101466fc
push 0
mov edx, 0xb30de0ec
call fcn.1013c990
add esp, 4
test eax, eax
je 0x101466f9
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 0x10146705
xor edx, edx
test ecx, ecx
je 0x1014672e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10146712
cmp edi, 0xb30de0ec
je 0x1014674f
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 0x1014668c
jmp 0x101466c8
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
jmp 0x1014668c
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 0x10146778
mov byte [edi + 0x4650], 1
movaps xmm0, xmm5
call fcn.1000e030
movss xmm1, dword [0x1030b768]
comiss xmm1, xmm0
jb 0x1014691a
mov eax, dword [edi + edx*8 + 0x44]
mov ecx, dword [0x103c3bb8]
movq xmm0, qword [edi + edx*8 + 0x3c]
mov dword [ebp - 0x60], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x1014690b
or ecx, 1
mov dword [0x103c3bb8], ecx
mov dword [ebp - 4], 8
mov eax, dword [0x103bf630]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x103bf634]
je 0x1014683a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x1014682c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10146803
xor edx, edx
test ecx, ecx
je 0x1014682c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10146810
cmp edi, 0x4e9f1122
je 0x10146854
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x103bf634]
jne 0x101467f0
xor edi, edi
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x14]
mov dword [0x103c3b78], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1014690e
mov eax, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1014683c
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 0x101468a4
cmp dword [ecx + 4], 0
jle 0x101468a4
push 0
mov edx, 0x4cdd3467
call fcn.1013c990
add esp, 4
test eax, eax
je 0x101468a1
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 0x101468b0
xor edx, edx
test ecx, ecx
je 0x101468dc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101468c0
cmp edi, 0x4cdd3467
je 0x101468fd
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 0x1014683c
jmp 0x10146870
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x28]
jmp 0x1014683c
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.1000e030
movss xmm1, dword [0x1030b7fc]
comiss xmm1, xmm0
jb 0x10146a99
mov eax, dword [ebp - 0x18]
mov ecx, dword [0x103c3b84]
movss xmm0, dword [eax + edx*8 + 0xc]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x10146a91
or ecx, 1
mov dword [0x103c3b84], ecx
mov dword [ebp - 4], 9
mov eax, dword [0x103bf630]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x103bf634]
je 0x101469cd
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x101469bf
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10146996
xor edx, edx
test ecx, ecx
je 0x101469bf
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x101469a3
cmp esi, 0x72e242a1
je 0x101469dd
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x103bf634]
jne 0x10146983
xor edi, edi
mov eax, dword [ebp - 0x64]
mov dword [0x103c3c20], edi
jmp 0x10146a94
mov eax, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x101469cf
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 0x10146a26
cmp dword [ecx + 4], 0
jle 0x10146a26
push 0
mov edx, 0x6d8d7d9d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10146a23
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 0x10146a30
xor edx, edx
test ecx, ecx
je 0x10146a5c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10146a40
cmp esi, 0x6d8d7d9d
je 0x10146a7d
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 0x101469cf
jmp 0x101469f2
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x64]
mov dword [0x103c3c20], edi
jmp 0x10146a94
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