Function at 0x10141e70
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 0x1022de41
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x58
push esi
push edi
mov eax, dword [0x102d2084]
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 0x10142f39
mov eax, dword [0x10bbb620]
mov ecx, dword [0x1036f6bc]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x2c], eax
test cl, 1
jne 0x10142050
or ecx, 1
mov dword [0x1036f6bc], ecx
mov dword [ebp - 4], 0
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
je 0x10141f7a
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10141f6c
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10141f43
xor edx, edx
test ecx, ecx
je 0x10141f6c
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10141f50
cmp esi, 0x4e9f1122
je 0x10141f9a
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
jne 0x10141f30
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 [0x10370f3c], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10142059
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x10142038
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 0x10141fe7
cmp dword [ecx + 4], 0
jle 0x10141fe7
push 0
mov edx, 0x1e948cb9
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10141fe4
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 0x10141ff0
xor edx, edx
test ecx, ecx
je 0x1014201c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10142000
cmp esi, 0x1e948cb9
je 0x10142042
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 0x10141fb3
mov ecx, edi
mov dword [ebp - 0x24], edi
jmp 0x10141f7f
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x20]
jmp 0x10141f7c
mov ecx, dword [0x10370f3c]
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 [0x10bbb620]
mov ecx, dword [0x1036f6e8]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x2c], eax
test cl, 1
jne 0x101421dc
or ecx, 1
mov dword [0x1036f6e8], ecx
mov dword [ebp - 4], 1
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
je 0x1014210d
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x101420ff
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x101420d6
xor edx, edx
test ecx, ecx
je 0x101420ff
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101420e3
cmp edi, 0x4e9f1122
je 0x1014212d
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
jne 0x101420c3
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 [0x1036f6ac], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x101421e5
mov eax, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x101421c4
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 0x1014217a
cmp dword [ecx + 4], 0
jle 0x1014217a
push 0
mov edx, 0xcc13b533
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10142177
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 0x10142183
xor edx, edx
test ecx, ecx
je 0x101421ac
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142190
cmp edi, 0xcc13b533
je 0x101421ce
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 0x10142146
mov ecx, edi
mov dword [ebp - 0x28], edi
jmp 0x10142112
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x1014210f
mov ecx, dword [0x1036f6ac]
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 [0x10bbb620]
mov ecx, dword [0x10370f84]
add eax, 0x91761abb
xor eax, 0xfd410b50
movss dword [ebp - 0x54], xmm1
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x3c], eax
test cl, 1
jne 0x1014236e
or ecx, 1
mov dword [0x10370f84], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
je 0x1014229e
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x10142290
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10142267
xor edx, edx
test ecx, ecx
je 0x10142290
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142274
cmp edi, 0x4e9f1122
je 0x101422be
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1036cbb4]
jne 0x10142254
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 [0x10370f64], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10142377
mov ecx, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x10142356
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 0x1014230c
cmp dword [ecx + 4], 0
jle 0x1014230c
push 0
mov edx, 0xb30de0ec
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10142309
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 0x10142315
xor edx, edx
test ecx, ecx
je 0x1014233e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142322
cmp edi, 0xb30de0ec
je 0x10142360
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 0x101422d7
mov ecx, edi
mov dword [ebp - 0x2c], edi
jmp 0x101422a3
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x101422a0
mov ecx, dword [0x10370f64]
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 [0x10bbb620]
mov ecx, dword [0x10370f58]
add eax, 0x91761abb
xor eax, 0xfd410b50
movss dword [ebp - 0x68], xmm1
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x38], eax
test cl, 1
jne 0x1014250e
or ecx, 1
mov dword [0x10370f58], ecx
mov dword [ebp - 4], 3
mov eax, dword [0x1036cbb0]
mov ecx, dword [0x1036cbb4]
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x1014243e
mov edx, dword [eax]
mov dword [ebp - 0x30], edx
test edx, edx
je 0x10142434
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10142405
xor edx, edx
test ecx, ecx
je 0x1014242e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142412
cmp edi, 0x4e9f1122
je 0x1014245e
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x1036cbb4]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, ecx
jne 0x101423f2
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 [0x10370f18], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10142517
mov ecx, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x101424f6
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 0x101424ac
cmp dword [ecx + 4], 0
jle 0x101424ac
push 0
mov edx, 0x4cdd3467
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101424a9
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 0x101424b5
xor edx, edx
test ecx, ecx
je 0x101424de
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101424c2
cmp edi, 0x4cdd3467
je 0x10142500
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 0x10142477
mov ecx, edi
mov dword [ebp - 0x30], edi
jmp 0x10142443
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x10142440
mov ecx, dword [0x10370f18]
mov dword [ebp - 0x30], ecx
movss xmm5, dword [edi + edx*8 + 0x44]
subss xmm5, dword [eax + ecx + 8]
mov eax, dword [0x10bbb620]
mov ecx, dword [0x10370f24]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x48], eax
test cl, 1
jne 0x1014268c
or ecx, 1
mov dword [0x10370f24], ecx
mov dword [ebp - 4], 4
mov eax, dword [0x1036cbb0]
mov ecx, dword [0x1036cbb4]
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x101425bc
mov edx, dword [eax]
mov dword [ebp - 0x38], edx
test edx, edx
je 0x101425b2
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10142583
xor edx, edx
test ecx, ecx
je 0x101425ac
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142590
cmp edi, 0x72e242a1
je 0x101425dc
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x1036cbb4]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, ecx
jne 0x10142570
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 [0x10370fc0], ecx
jmp 0x10142695
mov ecx, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
cmp dword [ecx + 4], edi
jle 0x10142674
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 0x1014262a
cmp dword [ecx + 4], 0
jle 0x1014262a
push 0
mov edx, 0x6d8d7d9d
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10142627
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 0x10142633
xor edx, edx
test ecx, ecx
je 0x1014265c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142640
cmp edi, 0x6d8d7d9d
je 0x1014267e
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 0x101425f5
mov ecx, edi
mov dword [ebp - 0x34], edi
jmp 0x101425c1
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1c]
jmp 0x101425be
mov ecx, dword [0x10370fc0]
mov dword [ebp - 0x34], ecx
movss xmm2, dword [edi + edx*8 + 0xc]
subss xmm2, dword [eax + ecx]
call fcn.1000da40
movss xmm1, dword [0x102ba684]
comiss xmm1, xmm0
jb 0x1014286f
movaps xmm0, xmm3
call fcn.1000da40
comiss xmm1, xmm0
jb 0x1014286f
movaps xmm0, xmm4
call fcn.1000da40
comiss xmm1, xmm0
jb 0x1014286f
mov eax, dword [edi + edx*8 + 0x20]
mov ecx, dword [0x1036f6bc]
movq xmm0, qword [edi + edx*8 + 0x18]
mov dword [ebp - 0x50], eax
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x3c], eax
test cl, 1
jne 0x1014285b
or ecx, 1
mov dword [0x1036f6bc], ecx
mov dword [ebp - 4], 5
mov eax, dword [0x1036cbb0]
mov ecx, dword [0x1036cbb4]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1014277e
mov edx, dword [eax]
mov dword [ebp - 0x24], edx
test edx, edx
je 0x10142774
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10142745
xor edx, edx
test ecx, ecx
je 0x1014276e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142752
cmp edi, 0x4e9f1122
je 0x101427a7
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x1036cbb4]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x10142732
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 [0x10370f3c], edi
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10142876
mov ecx, dword [ebp - 0x24]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x38], edi
cmp dword [ecx + 4], edi
jle 0x10142780
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 0x101427f5
cmp dword [ecx + 4], 0
jle 0x101427f5
push 0
mov edx, 0x1e948cb9
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101427f2
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 0x10142800
xor edx, edx
test ecx, ecx
je 0x1014282c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142810
cmp edi, 0x1e948cb9
je 0x1014284d
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 0x10142780
jmp 0x101427c0
mov eax, dword [ebp - 0x48]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x1c]
jmp 0x10142780
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 0x10142876
mov byte [edi + 0x4650], 1
movaps xmm0, xmm6
call fcn.1000da40
comiss xmm1, xmm0
jb 0x10142a3f
movaps xmm0, xmm7
call fcn.1000da40
comiss xmm1, xmm0
jb 0x10142a3f
movss xmm0, dword [ebp - 0x54]
call fcn.1000da40
comiss xmm1, xmm0
jb 0x10142a3f
mov eax, dword [edi + edx*8 + 0x2c]
mov ecx, dword [0x1036f6e8]
movq xmm0, qword [edi + edx*8 + 0x24]
mov dword [ebp - 0x48], eax
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x50], eax
test cl, 1
jne 0x10142a2b
or ecx, 1
mov dword [0x1036f6e8], ecx
mov dword [ebp - 4], 6
mov eax, dword [0x1036cbb0]
mov ecx, dword [0x1036cbb4]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x10142951
mov edx, dword [eax]
mov dword [ebp - 0x28], edx
test edx, edx
je 0x10142947
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10142918
xor edx, edx
test ecx, ecx
je 0x10142941
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142925
cmp edi, 0x4e9f1122
je 0x1014297a
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x1036cbb4]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x10142905
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 [0x1036f6ac], edi
movq qword [eax + edi], xmm0
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10142a46
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x38], edi
cmp dword [ecx + 4], edi
jle 0x10142953
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 0x101429c5
cmp dword [ecx + 4], 0
jle 0x101429c5
push 0
mov edx, 0xcc13b533
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101429c2
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 0x101429d0
xor edx, edx
test ecx, ecx
je 0x101429fc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101429e0
cmp edi, 0xcc13b533
je 0x10142a1d
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 0x10142953
jmp 0x10142990
mov eax, dword [ebp - 0x54]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x20]
jmp 0x10142953
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 0x10142a46
mov byte [edi + 0x4650], 1
movss xmm0, dword [ebp - 0x60]
call fcn.1000da40
comiss xmm1, xmm0
jb 0x10142c11
movss xmm0, dword [ebp - 0x64]
call fcn.1000da40
comiss xmm1, xmm0
jbe 0x10142c11
movss xmm0, dword [ebp - 0x68]
call fcn.1000da40
comiss xmm1, xmm0
jb 0x10142c11
mov eax, dword [edi + edx*8 + 0x38]
mov ecx, dword [0x10370f84]
movq xmm0, qword [edi + edx*8 + 0x30]
mov dword [ebp - 0x60], eax
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x10142bfd
or ecx, 1
mov dword [0x10370f84], ecx
mov dword [ebp - 4], 7
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1036cbb4]
je 0x10142b2a
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x10142b1c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10142af0
xor edx, edx
test ecx, ecx
je 0x10142b1c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142b00
cmp edi, 0x4e9f1122
je 0x10142b53
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1036cbb4]
jne 0x10142ad7
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 [0x10370f64], edi
mov dword [eax + edi + 8], ecx
mov edi, dword [ebp - 0x18]
jmp 0x10142c18
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x10142b2c
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 0x10142b9c
cmp dword [ecx + 4], 0
jle 0x10142b9c
push 0
mov edx, 0xb30de0ec
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10142b99
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 0x10142ba5
xor edx, edx
test ecx, ecx
je 0x10142bce
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142bb2
cmp edi, 0xb30de0ec
je 0x10142bef
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 0x10142b2c
jmp 0x10142b68
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
jmp 0x10142b2c
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 0x10142c18
mov byte [edi + 0x4650], 1
movaps xmm0, xmm5
call fcn.1000da40
movss xmm1, dword [0x102ba6a8]
comiss xmm1, xmm0
jb 0x10142dba
mov eax, dword [edi + edx*8 + 0x44]
mov ecx, dword [0x10370f58]
movq xmm0, qword [edi + edx*8 + 0x3c]
mov dword [ebp - 0x60], eax
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x10142dab
or ecx, 1
mov dword [0x10370f58], ecx
mov dword [ebp - 4], 8
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1036cbb4]
je 0x10142cda
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x10142ccc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10142ca3
xor edx, edx
test ecx, ecx
je 0x10142ccc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142cb0
cmp edi, 0x4e9f1122
je 0x10142cf4
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1036cbb4]
jne 0x10142c90
xor edi, edi
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x14]
mov dword [0x10370f18], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x10142dae
mov eax, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x10142cdc
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 0x10142d44
cmp dword [ecx + 4], 0
jle 0x10142d44
push 0
mov edx, 0x4cdd3467
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10142d41
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 0x10142d50
xor edx, edx
test ecx, ecx
je 0x10142d7c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10142d60
cmp edi, 0x4cdd3467
je 0x10142d9d
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 0x10142cdc
jmp 0x10142d10
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x28]
jmp 0x10142cdc
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.1000da40
movss xmm1, dword [0x102ba73c]
comiss xmm1, xmm0
jb 0x10142f39
mov eax, dword [ebp - 0x18]
mov ecx, dword [0x10370f24]
movss xmm0, dword [eax + edx*8 + 0xc]
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x64], eax
test cl, 1
jne 0x10142f31
or ecx, 1
mov dword [0x10370f24], ecx
mov dword [ebp - 4], 9
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1036cbb4]
je 0x10142e6d
mov ecx, dword [eax]
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x10142e5f
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x10142e36
xor edx, edx
test ecx, ecx
je 0x10142e5f
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10142e43
cmp esi, 0x72e242a1
je 0x10142e7d
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1036cbb4]
jne 0x10142e23
xor edi, edi
mov eax, dword [ebp - 0x64]
mov dword [0x10370fc0], edi
jmp 0x10142f34
mov eax, dword [ebp - 0x30]
xor edi, edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x10142e6f
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 0x10142ec6
cmp dword [ecx + 4], 0
jle 0x10142ec6
push 0
mov edx, 0x6d8d7d9d
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10142ec3
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 0x10142ed0
xor edx, edx
test ecx, ecx
je 0x10142efc
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10142ee0
cmp esi, 0x6d8d7d9d
je 0x10142f1d
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 0x10142e6f
jmp 0x10142e92
mov eax, dword [ebp - 0x68]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x64]
mov dword [0x10370fc0], edi
jmp 0x10142f34
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