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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1038e467
mov eax, dword fs:[0]
push eax
sub esp, 0x58
push esi
push edi
mov eax, dword [0x1049b0c0]
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 [0x11b92250]
add edx, 0xc6c19814
xor edx, 0x26996288
mov eax, dword [edx + 0xc8]
mov dword [ebp - 0x1c], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [edx + 0x154]
mov dword [ebp - 0x28], eax
mov eax, dword [0x1054aacc]
test al, 1
jne 0x10078d75
or eax, 1
mov dword [0x1054aacc], eax
mov dword [ebp - 4], 0
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
je 0x10078c8e
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10078c80
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10078c57
xor edx, edx
test ecx, ecx
je 0x10078c80
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10078c64
cmp edi, 0x4e9f1122
je 0x10078ca4
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
jne 0x10078c44
mov esi, dword [ebp - 0x30]
xor eax, eax
mov dword [0x1054aafc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10078d7a
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x10078d48
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 0x10078cf4
cmp dword [ecx + 4], 0
jle 0x10078cf4
push 0
mov edx, 0xcc0d385b
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10078cf1
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 [esi + ecx], 0
jne 0x10078d00
xor edx, edx
test ecx, ecx
je 0x10078d2c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10078d10
cmp edi, 0xcc0d385b
je 0x10078d5b
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 0x10078cc0
mov esi, dword [ebp - 0x30]
mov eax, edi
mov dword [0x1054aafc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10078d7a
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x30]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x14]
mov dword [0x1054aafc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10078d7a
mov eax, dword [0x1054aafc]
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 0x1007a1aa
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 [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0xc8]
mov dword [ebp - 0x28], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x34], eax
mov eax, dword [0x1054aa98]
test al, 1
jne 0x10078f1b
or eax, 1
mov dword [0x1054aa98], eax
mov dword [ebp - 4], 1
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
je 0x10078e4a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10078e3c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10078e13
xor edx, edx
test ecx, ecx
je 0x10078e3c
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10078e20
cmp edi, 0x22961f03
je 0x10078e5d
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
jne 0x10078e00
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054aa34], eax
jmp 0x10078f20
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x10078ef4
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 0x10078eaa
cmp dword [ecx + 4], 0
jle 0x10078eaa
push 0
mov edx, 0xf6d89572
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10078ea7
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 [esi + ecx], 0
jne 0x10078eb3
xor edx, edx
test ecx, ecx
je 0x10078edc
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10078ec0
cmp edi, 0xf6d89572
je 0x10078f04
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 0x10078e76
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054aa34], eax
jmp 0x10078f20
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x1054aa34], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10078f20
mov eax, dword [0x1054aa34]
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 0x10079239
mov ecx, dword [0x1054aaa4]
test cl, 1
jne 0x1007908b
or ecx, 1
mov dword [0x1054aaa4], ecx
mov dword [ebp - 4], 2
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
je 0x10078fba
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10078fac
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10078f80
xor edx, edx
test ecx, ecx
je 0x10078fac
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10078f90
cmp edi, 0x72e242a1
je 0x10078fcd
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
jne 0x10078f66
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054aa50], eax
jmp 0x10079090
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x10079064
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 0x1007901a
cmp dword [ecx + 4], 0
jle 0x1007901a
push 0
mov edx, 0x23393cbf
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079017
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 0x10079023
xor edx, edx
test ecx, ecx
je 0x1007904c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079030
cmp edi, 0x23393cbf
je 0x10079074
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 0x10078fe6
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054aa50], eax
jmp 0x10079090
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x1054aa50], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079090
mov eax, dword [0x1054aa50]
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x10]
mov al, byte [ecx + eax]
mov byte [esi], al
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0xc8]
mov dword [ebp - 0x2c], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x38], eax
mov eax, dword [0x10544694]
test al, 1
jne 0x10079225
or eax, 1
mov dword [0x10544694], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
je 0x1007913a
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1007912c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10079100
xor edx, edx
test ecx, ecx
je 0x1007912c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079110
cmp edi, 0x4e9f1122
je 0x10079150
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [0x1053ebbc]
jne 0x100790e7
mov ecx, dword [ebp - 0x28]
xor eax, eax
mov dword [0x1054162c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1007922a
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x100791f8
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 0x100791a4
cmp dword [ecx + 4], 0
jle 0x100791a4
push 0
mov edx, 0x940131c5
call fcn.10238b60
add esp, 4
test eax, eax
je 0x100791a1
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 0x100791b0
xor edx, edx
test ecx, ecx
je 0x100791dc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100791c0
cmp edi, 0x940131c5
je 0x1007920b
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 0x10079170
mov ecx, dword [ebp - 0x28]
mov eax, edi
mov dword [0x1054162c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1007922a
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x1054162c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1007922a
mov eax, dword [0x1054162c]
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 [0x1054ab20]
test al, 1
jne 0x1007938f
or eax, 1
mov dword [0x1054ab20], eax
mov dword [ebp - 4], 4
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
je 0x100792af
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x100792a1
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079278
xor edx, edx
test ecx, ecx
je 0x100792a1
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079285
cmp edi, 0x54aff69
je 0x100792c2
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079265
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054aae0], eax
jmp 0x10079394
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x10079368
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 0x10079314
cmp dword [ecx + 4], 0
jle 0x10079314
push 0
mov edx, 0x3775d33c
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079311
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 [esi + ecx], 0
jne 0x10079320
xor edx, edx
test ecx, ecx
je 0x1007934c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079330
cmp edi, 0x3775d33c
je 0x10079378
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 0x100792e0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054aae0], eax
jmp 0x10079394
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x1054aae0], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079394
mov eax, dword [0x1054aae0]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + ecx]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 8], eax
mov eax, dword [0x1054aac0]
test al, 1
jne 0x10079505
or eax, 1
mov dword [0x1054aac0], eax
mov dword [ebp - 4], 5
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
je 0x1007941a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1007940c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x100793e3
xor edx, edx
test ecx, ecx
je 0x1007940c
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100793f0
cmp edi, 0x22961f03
je 0x10079430
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
jne 0x100793d0
mov ecx, dword [ebp - 0x10]
xor eax, eax
mov dword [0x1054aabc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1007950a
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x100794d8
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 0x10079484
cmp dword [ecx + 4], 0
jle 0x10079484
push 0
mov edx, 0x6930d720
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079481
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 [esi + ecx], 0
jne 0x10079490
xor edx, edx
test ecx, ecx
je 0x100794bc
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100794a0
cmp edi, 0x6930d720
je 0x100794eb
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 0x10079450
mov ecx, dword [ebp - 0x10]
mov eax, edi
mov dword [0x1054aabc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1007950a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x10]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x1054aabc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1007950a
mov eax, dword [0x1054aabc]
mov edx, dword [ebp - 0x14]
mov eax, dword [eax + edx]
mov dword [ecx + 0xc], eax
mov eax, dword [0x1054ab18]
test al, 1
jne 0x10079660
or eax, 1
mov dword [0x1054ab18], eax
mov dword [ebp - 4], 6
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
je 0x1007958a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1007957c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079553
xor edx, edx
test ecx, ecx
je 0x1007957c
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079560
cmp edi, 0x22961f03
je 0x100795a6
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079540
xor eax, eax
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov dword [0x1054aaf8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079668
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x10079648
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 0x100795f4
cmp dword [ecx + 4], 0
jle 0x100795f4
push 0
mov edx, 0x3222175
call fcn.10238b60
add esp, 4
test eax, eax
je 0x100795f1
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 [esi + ecx], 0
jne 0x10079600
xor edx, edx
test ecx, ecx
je 0x1007962c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079610
cmp edi, 0x3222175
je 0x10079652
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 0x100795c0
mov eax, edi
mov dword [ebp - 0x24], edi
jmp 0x1007958f
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
jmp 0x1007958c
mov eax, dword [0x1054aaf8]
mov dword [ebp - 0x24], eax
mov eax, dword [eax + edx]
mov edx, dword [0x1054ab00]
mov dword [ecx + 0x10], eax
test dl, 1
jne 0x100797c0
or edx, 1
mov dword [0x1054ab00], edx
mov dword [ebp - 4], 7
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
je 0x100796ea
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x100796dc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x100796b3
xor edx, edx
test ecx, ecx
je 0x100796dc
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100796c0
cmp edi, 0x1eee87cc
je 0x10079707
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
jne 0x100796a0
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x1054ab00]
mov dword [0x1054ab50], ecx
jmp 0x100797c9
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x100797a8
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 0x10079754
cmp dword [ecx + 4], 0
jle 0x10079754
push 0
mov edx, 0x996ac90a
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079751
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 [esi + ecx], 0
jne 0x10079760
xor edx, edx
test ecx, ecx
je 0x1007978c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079770
cmp edi, 0x996ac90a
je 0x100797b2
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 0x10079720
mov ecx, edi
mov dword [ebp - 0x18], edi
jmp 0x100796ef
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x100796ec
mov ecx, dword [0x1054ab50]
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 0x10079860
or edx, 1
mov dword [0x1054ab00], edx
mov dword [ebp - 4], 8
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
je 0x1007984e
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10079840
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079813
xor edx, edx
test ecx, ecx
je 0x10079840
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079820
cmp edi, 0x1eee87cc
je 0x10079904
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079800
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov dword [0x1054ab50], 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 [0x1054ab14]
test al, 1
jne 0x10079a95
or eax, 1
mov dword [0x1054ab14], eax
mov dword [ebp - 4], 9
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
je 0x100798ee
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x100798e0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x100798b0
xor edx, edx
test ecx, ecx
je 0x100798e0
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100798c0
cmp edi, 0x1eee87cc
je 0x100799c0
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079898
mov ecx, dword [ebp - 0x10]
xor eax, eax
mov dword [0x1054ab28], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079a9a
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x100799a8
xor ecx, ecx
mov dword [ebp - 0x20], 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 0x10079954
cmp dword [ecx + 4], 0
jle 0x10079954
push 0
mov edx, 0x996ac90a
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079951
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 [esi + ecx], 0
jne 0x10079960
xor edx, edx
test ecx, ecx
je 0x1007998c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079970
cmp edi, 0x996ac90a
je 0x100799b2
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 0x10079920
mov ecx, edi
mov dword [ebp - 0x18], edi
jmp 0x10079853
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x10079850
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x28], edi
cmp dword [eax + 4], edi
jle 0x10079a68
xor ecx, ecx
mov dword [ebp - 0x2c], 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 0x10079a14
cmp dword [ecx + 4], 0
jle 0x10079a14
push 0
mov edx, 0x82735d4f
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079a11
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 dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079a20
xor edx, edx
test ecx, ecx
je 0x10079a4c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079a30
cmp edi, 0x82735d4f
je 0x10079a7b
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
cmp edx, dword [eax + 4]
jl 0x100799e0
mov ecx, dword [ebp - 0x10]
mov eax, edi
mov dword [0x1054ab28], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079a9a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x10]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x20]
mov dword [0x1054ab28], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079a9a
mov eax, dword [0x1054ab28]
mov edx, dword [ebp - 0x14]
mov eax, dword [eax + edx]
mov dword [ecx + 0x18], eax
mov eax, dword [0x1054aad8]
test al, 1
jne 0x10079bed
or eax, 1
mov dword [0x1054aad8], eax
mov dword [ebp - 4], 0xa
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x10079b1a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x10079b0c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079ae3
xor edx, edx
test ecx, ecx
je 0x10079b0c
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079af0
cmp edi, 0x1eee87cc
je 0x10079b36
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079ad0
xor eax, eax
mov ecx, dword [ebp - 0x10]
add eax, 4
mov edx, dword [ebp - 0x14]
mov dword [0x1054ab58], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079bf2
mov eax, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x10079bd8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10079b84
cmp dword [ecx + 4], 0
jle 0x10079b84
push 0
mov edx, 0x82735d4f
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079b81
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 dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079b90
xor edx, edx
test ecx, ecx
je 0x10079bbc
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079ba0
cmp edi, 0x82735d4f
je 0x10079bdf
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10079b50
mov eax, edi
jmp 0x10079b1c
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x10079b1c
mov eax, dword [0x1054ab58]
mov eax, dword [eax + edx]
mov dword [ecx + 0x1c], eax
mov eax, dword [0x1054aae4]
test al, 1
jne 0x10079d3d
or eax, 1
mov dword [0x1054aae4], eax
mov dword [ebp - 4], 0xb
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x10079c6e
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x10079c60
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079c37
xor edx, edx
test ecx, ecx
je 0x10079c60
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079c44
cmp edi, 0x54aff69
je 0x10079c87
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079c24
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov dword [0x1054aae8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079d42
mov eax, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x10079d28
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10079cd4
cmp dword [ecx + 4], 0
jle 0x10079cd4
push 0
mov edx, 0xc77829f
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079cd1
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 dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079ce0
xor edx, edx
test ecx, ecx
je 0x10079d0c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079cf0
cmp edi, 0xc77829f
je 0x10079d2f
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10079ca0
mov eax, edi
jmp 0x10079c70
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x10079c70
mov eax, dword [0x1054aae8]
mov eax, dword [eax + edx]
mov dword [ecx + 0x20], eax
mov eax, dword [0x1054ab38]
test al, 1
jne 0x10079e8d
or eax, 1
mov dword [0x1054ab38], eax
mov dword [ebp - 4], 0xc
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x10079dbe
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
test ecx, ecx
je 0x10079db0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10079d87
xor edx, edx
test ecx, ecx
je 0x10079db0
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079d94
cmp edi, 0x54aff69
je 0x10079dda
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079d74
xor eax, eax
mov ecx, dword [ebp - 0x10]
add eax, 0x30
mov edx, dword [ebp - 0x14]
mov dword [0x1054ab10], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10079e92
mov eax, dword [ebp - 0x20]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x10079e78
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x38], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10079e27
cmp dword [ecx + 4], 0
jle 0x10079e27
push 0
mov edx, 0x3775d33c
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079e24
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 0x10079e30
xor edx, edx
test ecx, ecx
je 0x10079e5c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079e40
cmp edi, 0x3775d33c
je 0x10079e7f
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10079df3
mov eax, edi
jmp 0x10079dc0
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x10079dc0
mov eax, dword [0x1054ab10]
mov eax, dword [eax + edx]
mov dword [ecx + 0x24], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 0x38], 0
je 0x1007a1aa
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 0x1007a1aa
mov eax, dword [0x1054ab00]
test al, 1
jne 0x1007a035
or eax, 1
mov dword [0x1054ab00], eax
mov dword [ebp - 4], 0xd
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1053ebbc]
je 0x10079f6c
mov ecx, dword [eax]
mov dword [ebp + 8], ecx
test ecx, ecx
je 0x10079f5e
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10079f35
xor edx, edx
test ecx, ecx
je 0x10079f5e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079f42
cmp edi, 0x1eee87cc
je 0x10079f80
mov eax, dword [ebp - 0x30]
add eax, 4
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1053ebbc]
jne 0x10079f22
xor edi, edi
mov dword [0x1054ab50], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1007a038
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], edi
cmp dword [eax + 4], edi
jle 0x10079f6e
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 0x10079fc9
cmp dword [ecx + 4], 0
jle 0x10079fc9
push 0
mov edx, 0x996ac90a
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10079fc6
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 0x10079fd2
xor edx, edx
test ecx, ecx
je 0x10079ffc
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10079fe0
cmp edi, 0x996ac90a
je 0x1007a01d
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 0x10079f6e
jmp 0x10079f95
mov eax, dword [ebp - 0x38]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x20]
mov dword [0x1054ab50], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1007a038
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x50]
cmp eax, dword [edi + ecx]
je 0x1007a1aa
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 0x1007a1aa
mov eax, dword [0x1054ab18]
mov dword [edx + 0x10], ecx
test al, 1
jne 0x1007a1a1
or eax, 1
mov dword [0x1054ab18], eax
mov dword [ebp - 4], 0xe
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1053ebbc]
je 0x1007a0dc
mov ecx, dword [eax]
mov dword [ebp + 8], ecx
test ecx, ecx
je 0x1007a0ce
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1007a0a5
xor edx, edx
test ecx, ecx
je 0x1007a0ce
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1007a0b2
cmp edi, 0x22961f03
je 0x1007a0ec
mov eax, dword [ebp - 0x30]
add eax, 4
mov dword [ebp - 0x30], eax
cmp eax, dword [0x1053ebbc]
jne 0x1007a092
xor edi, edi
mov ecx, dword [ebp - 0x34]
mov dword [0x1054aaf8], edi
jmp 0x1007a1a4
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], edi
cmp dword [eax + 4], edi
jle 0x1007a0de
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 0x1007a135
cmp dword [ecx + 4], 0
jle 0x1007a135
push 0
mov edx, 0x3222175
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1007a132
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 [esi + ecx], 0
jne 0x1007a140
xor edx, edx
test ecx, ecx
je 0x1007a16c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1007a150
cmp edi, 0x3222175
je 0x1007a18d
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 0x1007a0de
jmp 0x1007a101
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x20]
mov dword [0x1054aaf8], edi
jmp 0x1007a1a4
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