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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10222bb7
mov eax, dword fs:[0]
push eax
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 esi, ecx
mov dword [ebp - 0x30], esi
mov edx, dword [0x10bbb620]
add edx, 0x91761abb
xor edx, 0xfd410b50
mov eax, dword [edx + 0xb0]
mov dword [ebp - 0x1c], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [edx + 0x134]
mov dword [ebp - 0x28], eax
mov eax, dword [0x10370fc8]
test al, 1
jne 0x1006e175
or eax, 1
mov dword [0x10370fc8], eax
mov dword [ebp - 4], 0
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
je 0x1006e08e
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x1006e080
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e057
xor edx, edx
test ecx, ecx
je 0x1006e080
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e064
cmp edi, 0x4e9f1122
je 0x1006e0a4
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006e044
mov esi, dword [ebp - 0x30]
xor eax, eax
mov dword [0x1036f6c4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e17a
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x1006e148
xor ecx, ecx
mov dword [ebp - 0x20], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x2c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006e0f4
cmp dword [ecx + 4], 0
jle 0x1006e0f4
push 0
mov edx, 0xcc0d385b
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006e0f1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e100
xor edx, edx
test ecx, ecx
je 0x1006e12c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e110
cmp edi, 0xcc0d385b
je 0x1006e15b
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov edi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1006e0c0
mov esi, dword [ebp - 0x30]
mov eax, edi
mov dword [0x1036f6c4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e17a
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x30]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
mov dword [0x1036f6c4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e17a
mov eax, dword [0x1036f6c4]
mov ecx, dword [ebp - 0x28]
push dword [eax + ecx]
mov ecx, dword [ebp - 0x1c]
call dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x1006f5aa
mov ecx, dword [ebp + 8]
mov edi, 0x96
mov ecx, dword [ecx + 4]
mov eax, ecx
cdq
idiv edi
add edx, 0x560
imul eax, edx, 0x2c
add eax, esi
mov dword [ebp - 0x10], eax
mov dword [eax + 4], ecx
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x28], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x34], eax
mov eax, dword [0x10374118]
test al, 1
jne 0x1006e31b
or eax, 1
mov dword [0x10374118], eax
mov dword [ebp - 4], 1
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
je 0x1006e24a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x1006e23c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e213
xor edx, edx
test ecx, ecx
je 0x1006e23c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e220
cmp edi, 0x22961f03
je 0x1006e25d
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006e200
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103740b8], eax
jmp 0x1006e320
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x1006e2f4
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x2c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006e2aa
cmp dword [ecx + 4], 0
jle 0x1006e2aa
push 0
mov edx, 0xf6d89572
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006e2a7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e2b3
xor edx, edx
test ecx, ecx
je 0x1006e2dc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e2c0
cmp edi, 0xf6d89572
je 0x1006e304
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1006e276
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103740b8], eax
jmp 0x1006e320
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x103740b8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e320
mov eax, dword [0x103740b8]
mov ecx, dword [ebp - 0x14]
push dword [eax + ecx]
mov ecx, dword [ebp - 0x28]
call dword [ebp - 0x34]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1006e639
mov ecx, dword [0x1037432c]
test cl, 1
jne 0x1006e48b
or ecx, 1
mov dword [0x1037432c], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
je 0x1006e3ba
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1006e3ac
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e380
xor edx, edx
test ecx, ecx
je 0x1006e3ac
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e390
cmp edi, 0x72e242a1
je 0x1006e3cd
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006e366
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103740d4], eax
jmp 0x1006e490
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x1006e464
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x34], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006e41a
cmp dword [ecx + 4], 0
jle 0x1006e41a
push 0
mov edx, 0x23393cbf
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006e417
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e423
xor edx, edx
test ecx, ecx
je 0x1006e44c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e430
cmp edi, 0x23393cbf
je 0x1006e474
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1006e3e6
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103740d4], eax
jmp 0x1006e490
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x103740d4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e490
mov eax, dword [0x103740d4]
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x10]
mov al, byte [ecx + eax]
mov byte [esi], al
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x2c], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x38], eax
mov eax, dword [0x10370f2c]
test al, 1
jne 0x1006e625
or eax, 1
mov dword [0x10370f2c], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
je 0x1006e53a
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1006e52c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e500
xor edx, edx
test ecx, ecx
je 0x1006e52c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e510
cmp edi, 0x4e9f1122
je 0x1006e550
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006e4e7
mov ecx, dword [ebp - 0x28]
xor eax, eax
mov dword [0x1036f688], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e62a
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x1006e5f8
xor ecx, ecx
mov dword [ebp - 0x20], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x34], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006e5a4
cmp dword [ecx + 4], 0
jle 0x1006e5a4
push 0
mov edx, 0x940131c5
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006e5a1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e5b0
xor edx, edx
test ecx, ecx
je 0x1006e5dc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e5c0
cmp edi, 0x940131c5
je 0x1006e60b
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1006e570
mov ecx, dword [ebp - 0x28]
mov eax, edi
mov dword [0x1036f688], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e62a
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x1036f688], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e62a
mov eax, dword [0x1036f688]
push dword [ecx + eax]
mov ecx, dword [ebp - 0x2c]
call dword [ebp - 0x38]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x28], eax
mov eax, dword [0x10374368]
test al, 1
jne 0x1006e78f
or eax, 1
mov dword [0x10374368], eax
mov dword [ebp - 4], 4
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
je 0x1006e6af
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1006e6a1
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e678
xor edx, edx
test ecx, ecx
je 0x1006e6a1
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e685
cmp edi, 0x54aff69
je 0x1006e6c2
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006e665
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10374348], eax
jmp 0x1006e794
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x1006e768
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006e714
cmp dword [ecx + 4], 0
jle 0x1006e714
push 0
mov edx, 0x3775d33c
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006e711
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e720
xor edx, edx
test ecx, ecx
je 0x1006e74c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e730
cmp edi, 0x3775d33c
je 0x1006e778
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x1006e6e0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10374348], eax
jmp 0x1006e794
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x10374348], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e794
mov eax, dword [0x10374348]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + ecx]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 8], eax
mov eax, dword [0x10374380]
test al, 1
jne 0x1006e905
or eax, 1
mov dword [0x10374380], eax
mov dword [ebp - 4], 5
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
je 0x1006e81a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1006e80c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e7e3
xor edx, edx
test ecx, ecx
je 0x1006e80c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e7f0
cmp edi, 0x22961f03
je 0x1006e830
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006e7d0
mov ecx, dword [ebp - 0x10]
xor eax, eax
mov dword [0x1037437c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e90a
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x1006e8d8
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006e884
cmp dword [ecx + 4], 0
jle 0x1006e884
push 0
mov edx, 0x6930d720
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006e881
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e890
xor edx, edx
test ecx, ecx
je 0x1006e8bc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e8a0
cmp edi, 0x6930d720
je 0x1006e8eb
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x1006e850
mov ecx, dword [ebp - 0x10]
mov eax, edi
mov dword [0x1037437c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e90a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x10]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x1037437c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006e90a
mov eax, dword [0x1037437c]
mov edx, dword [ebp - 0x14]
mov eax, dword [eax + edx]
mov dword [ecx + 0xc], eax
mov eax, dword [0x10374364]
test al, 1
jne 0x1006ea60
or eax, 1
mov dword [0x10374364], eax
mov dword [ebp - 4], 6
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
je 0x1006e98a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1006e97c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006e953
xor edx, edx
test ecx, ecx
je 0x1006e97c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006e960
cmp edi, 0x22961f03
je 0x1006e9a6
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006e940
xor eax, eax
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov dword [0x10374354], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006ea68
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x1006ea48
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006e9f4
cmp dword [ecx + 4], 0
jle 0x1006e9f4
push 0
mov edx, 0x3222175
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006e9f1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006ea00
xor edx, edx
test ecx, ecx
je 0x1006ea2c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006ea10
cmp edi, 0x3222175
je 0x1006ea52
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x1006e9c0
mov eax, edi
mov dword [ebp - 0x24], edi
jmp 0x1006e98f
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
jmp 0x1006e98c
mov eax, dword [0x10374354]
mov dword [ebp - 0x24], eax
mov eax, dword [eax + edx]
mov edx, dword [0x10374358]
mov dword [ecx + 0x10], eax
test dl, 1
jne 0x1006ebc0
or edx, 1
mov dword [0x10374358], edx
mov dword [ebp - 4], 7
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
je 0x1006eaea
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1006eadc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006eab3
xor edx, edx
test ecx, ecx
je 0x1006eadc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006eac0
cmp edi, 0x1eee87cc
je 0x1006eb07
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006eaa0
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x10374358]
mov dword [0x10374374], ecx
jmp 0x1006ebc9
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x1006eba8
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006eb54
cmp dword [ecx + 4], 0
jle 0x1006eb54
push 0
mov edx, 0x996ac90a
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006eb51
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006eb60
xor edx, edx
test ecx, ecx
je 0x1006eb8c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006eb70
cmp edi, 0x996ac90a
je 0x1006ebb2
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x20]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1006eb20
mov ecx, edi
mov dword [ebp - 0x18], edi
jmp 0x1006eaef
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x1006eaec
mov ecx, dword [0x10374374]
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x10]
mov eax, dword [ecx + eax]
mov dword [esi + 0x14], eax
test dl, 1
jne 0x1006ec60
or edx, 1
mov dword [0x10374358], edx
mov dword [ebp - 4], 8
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
je 0x1006ec4e
nop
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x1006ec40
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006ec13
xor edx, edx
test ecx, ecx
je 0x1006ec40
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006ec20
cmp edi, 0x1eee87cc
je 0x1006ed06
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006ec00
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov dword [0x10374374], ecx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
mov eax, dword [ecx + eax]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x14], eax
mov eax, dword [0x10374360]
test al, 1
jne 0x1006ee95
or eax, 1
mov dword [0x10374360], eax
mov dword [ebp - 4], 9
mov eax, dword [0x1036cbb0]
mov ecx, dword [0x1036cbb4]
mov dword [ebp - 0x28], eax
cmp eax, ecx
je 0x1006ecf0
nop word [eax + eax]
mov edx, dword [eax]
mov dword [ebp - 0x2c], edx
test edx, edx
je 0x1006ece6
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006ecb3
xor edx, edx
test ecx, ecx
je 0x1006ece0
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006ecc0
cmp edi, 0x1eee87cc
je 0x1006edc0
mov eax, dword [ebp - 0x28]
mov ecx, dword [0x1036cbb4]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, ecx
jne 0x1006eca0
mov ecx, dword [ebp - 0x10]
xor eax, eax
mov dword [0x1037436c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006ee9a
mov ecx, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [ecx + 4], edi
jle 0x1006eda8
xor eax, eax
mov dword [ebp - 0x1c], eax
nop
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x38], esi
test ecx, ecx
je 0x1006ed55
cmp dword [ecx + 4], 0
jle 0x1006ed55
push 0
mov edx, 0x996ac90a
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006ed52
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006ed60
xor edx, edx
test ecx, ecx
je 0x1006ed8c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006ed70
cmp edi, 0x996ac90a
je 0x1006edb2
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
add eax, 0x3c
mov ecx, dword [ebp - 0x20]
inc edx
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x1c], eax
cmp edx, dword [ecx + 4]
jl 0x1006ed20
mov ecx, edi
mov dword [ebp - 0x18], edi
jmp 0x1006ec53
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x1006ec50
mov ecx, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x28], edi
cmp dword [ecx + 4], edi
jle 0x1006ee68
xor eax, eax
mov dword [ebp - 0x1c], eax
nop dword [eax]
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x38], esi
test ecx, ecx
je 0x1006ee15
cmp dword [ecx + 4], 0
jle 0x1006ee15
push 0
mov edx, 0x82735d4f
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006ee12
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
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006ee20
xor edx, edx
test ecx, ecx
je 0x1006ee4c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006ee30
cmp edi, 0x82735d4f
je 0x1006ee7b
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
add eax, 0x3c
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x1c], eax
cmp edx, dword [ecx + 4]
jl 0x1006ede0
mov ecx, dword [ebp - 0x10]
mov eax, edi
mov dword [0x1037436c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006ee9a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x10]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x20]
mov dword [0x1037436c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006ee9a
mov eax, dword [0x1037436c]
mov edx, dword [ebp - 0x14]
mov eax, dword [eax + edx]
mov dword [ecx + 0x18], eax
mov eax, dword [0x10374344]
test al, 1
jne 0x1006efed
or eax, 1
mov dword [0x10374344], eax
mov dword [ebp - 4], 0xa
mov eax, dword [0x1036cbb0]
mov ecx, dword [0x1036cbb4]
mov dword [ebp - 0x2c], eax
cmp eax, ecx
je 0x1006ef1d
mov edx, dword [eax]
mov dword [ebp - 0x28], edx
test edx, edx
je 0x1006ef13
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006eee4
xor edx, edx
test ecx, ecx
je 0x1006ef0d
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006eef1
cmp edi, 0x1eee87cc
je 0x1006ef39
mov eax, dword [ebp - 0x2c]
mov ecx, dword [0x1036cbb4]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, ecx
jne 0x1006eed1
xor eax, eax
mov ecx, dword [ebp - 0x10]
add eax, 4
mov edx, dword [ebp - 0x14]
mov dword [0x10374378], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006eff2
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [ecx + 4], edi
jle 0x1006efd8
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 0x1006ef87
cmp dword [ecx + 4], 0
jle 0x1006ef87
push 0
mov edx, 0x82735d4f
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006ef84
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 0x1006ef90
xor edx, edx
test ecx, ecx
je 0x1006efbc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006efa0
cmp edi, 0x82735d4f
je 0x1006efdf
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
add eax, 0x3c
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x20], eax
cmp edx, dword [ecx + 4]
jl 0x1006ef52
mov eax, edi
jmp 0x1006ef1f
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1006ef1f
mov eax, dword [0x10374378]
mov eax, dword [eax + edx]
mov dword [ecx + 0x1c], eax
mov eax, dword [0x1037434c]
test al, 1
jne 0x1006f13d
or eax, 1
mov dword [0x1037434c], eax
mov dword [ebp - 4], 0xb
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
je 0x1006f06e
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1006f060
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006f037
xor edx, edx
test ecx, ecx
je 0x1006f060
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f044
cmp edi, 0x54aff69
je 0x1006f087
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006f024
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov dword [0x10374350], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006f142
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [ecx + 4], edi
jle 0x1006f128
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 0x1006f0d5
cmp dword [ecx + 4], 0
jle 0x1006f0d5
push 0
mov edx, 0xc77829f
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006f0d2
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 0x1006f0e0
xor edx, edx
test ecx, ecx
je 0x1006f10c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f0f0
cmp edi, 0xc77829f
je 0x1006f12f
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
add eax, 0x3c
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x20], eax
cmp edx, dword [ecx + 4]
jl 0x1006f0a0
mov eax, edi
jmp 0x1006f070
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1006f070
mov eax, dword [0x10374350]
mov eax, dword [eax + edx]
mov dword [ecx + 0x20], eax
mov eax, dword [0x10374370]
test al, 1
jne 0x1006f28d
or eax, 1
mov dword [0x10374370], eax
mov dword [ebp - 4], 0xc
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
je 0x1006f1be
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1006f1b0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006f187
xor edx, edx
test ecx, ecx
je 0x1006f1b0
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f194
cmp edi, 0x54aff69
je 0x1006f1da
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006f174
xor eax, eax
mov ecx, dword [ebp - 0x10]
add eax, 0x30
mov edx, dword [ebp - 0x14]
mov dword [0x1037435c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1006f292
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [ecx + 4], edi
jle 0x1006f278
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 0x1006f228
cmp dword [ecx + 4], 0
jle 0x1006f228
push 0
mov edx, 0x3775d33c
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006f225
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 0x1006f231
xor edx, edx
test ecx, ecx
je 0x1006f25c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f240
cmp edi, 0x3775d33c
je 0x1006f27f
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
add eax, 0x3c
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x20], eax
cmp edx, dword [ecx + 4]
jl 0x1006f1f3
mov eax, edi
jmp 0x1006f1c0
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1006f1c0
mov eax, dword [0x1037435c]
mov eax, dword [eax + edx]
mov dword [ecx + 0x24], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 0x38], 0
je 0x1006f5aa
mov esi, dword [eax + 4]
mov eax, 0x1b4e81b5
dec esi
imul esi
mov ecx, esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x96
sub ecx, eax
add ecx, 0x560
imul eax, ecx, 0x2c
add eax, dword [ebp - 0x30]
movups xmm0, xmmword [eax + 0x10]
movups xmm1, xmmword [eax]
movups xmmword [ebp - 0x54], xmm0
movq xmm0, qword [eax + 0x20]
psrldq xmm1, 4
movd eax, xmm1
movq qword [ebp - 0x44], xmm0
cmp eax, esi
jne 0x1006f5aa
mov eax, dword [0x10374358]
test al, 1
jne 0x1006f435
or eax, 1
mov dword [0x10374358], eax
mov dword [ebp - 4], 0xd
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1036cbb4]
je 0x1006f36c
mov ecx, dword [eax]
mov dword [ebp + 8], ecx
test ecx, ecx
je 0x1006f35e
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006f335
xor edx, edx
test ecx, ecx
je 0x1006f35e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f342
cmp edi, 0x1eee87cc
je 0x1006f380
mov eax, dword [ebp - 0x30]
add eax, 4
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006f322
xor edi, edi
mov dword [0x10374374], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1006f438
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], edi
cmp dword [eax + 4], edi
jle 0x1006f36e
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006f3c9
cmp dword [ecx + 4], 0
jle 0x1006f3c9
push 0
mov edx, 0x996ac90a
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006f3c6
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [ebp + 8]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1006f3d2
xor edx, edx
test ecx, ecx
je 0x1006f3fc
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f3e0
cmp edi, 0x996ac90a
je 0x1006f41d
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], ecx
cmp edx, dword [eax + 4]
jge 0x1006f36e
jmp 0x1006f395
mov eax, dword [ebp - 0x38]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x20]
mov dword [0x10374374], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1006f438
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x50]
cmp eax, dword [edi + ecx]
je 0x1006f5aa
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x10]
inc ecx
and ecx, 7
mov dword [ebp - 0x34], ecx
lea eax, [ecx + 1]
and eax, 7
cmp eax, dword [edx + 0x10]
jne 0x1006f5aa
mov eax, dword [0x10374364]
mov dword [edx + 0x10], ecx
test al, 1
jne 0x1006f5a1
or eax, 1
mov dword [0x10374364], eax
mov dword [ebp - 4], 0xe
mov eax, dword [0x1036cbb0]
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1036cbb4]
je 0x1006f4dc
mov ecx, dword [eax]
mov dword [ebp + 8], ecx
test ecx, ecx
je 0x1006f4ce
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006f4a5
xor edx, edx
test ecx, ecx
je 0x1006f4ce
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f4b2
cmp edi, 0x22961f03
je 0x1006f4ec
mov eax, dword [ebp - 0x30]
add eax, 4
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1036cbb4]
jne 0x1006f492
xor edi, edi
mov ecx, dword [ebp - 0x34]
mov dword [0x10374354], edi
jmp 0x1006f5a4
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], edi
cmp dword [eax + 4], edi
jle 0x1006f4de
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1006f535
cmp dword [ecx + 4], 0
jle 0x1006f535
push 0
mov edx, 0x3222175
call fcn.10138e60
add esp, 4
test eax, eax
je 0x1006f532
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [ebp + 8]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x1006f540
xor edx, edx
test ecx, ecx
je 0x1006f56c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1006f550
cmp edi, 0x3222175
je 0x1006f58d
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], ecx
cmp edx, dword [eax + 4]
jge 0x1006f4de
jmp 0x1006f501
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x20]
mov dword [0x10374354], edi
jmp 0x1006f5a4
mov edi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
mov dword [edi + eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4