Function at 0x140184220
Capabilities:
Encode data using xor
Generate random numbers using the delphi lcg

Disassembly:
push rbp
push rbx
push r13
push r14
lea rbp, [rsp - 0x18]
sub rsp, 0x118
mov rax, qword [0x140300040]
xor rax, rsp
mov qword [rbp + 8], rax
mov r11d, dword [rcx + 0x420648]
mov rdx, rcx
movsxd rbx, dword [rcx + 0x420640]
mov qword [rbp - 0x38], rcx
add rcx, 0x468
mov dword [rbp - 0x60], r11d
movups xmm0, xmmword [rdx + 0x4206a8]
movzx eax, byte [rdx + 0x42064d]
mov r10d, dword [rdx + 0x420638]
add r10d, dword [rdx + 0x420644]
movzx r8d, byte [rdx + 0x420662]
movzx r9d, byte [rdx + 0x420663]
xor r8d, eax
xor r9b, byte [rdx + 0x42064c]
movups xmm1, xmmword [rdx + 0x4206b8]
mov eax, dword [rdx + 0x420660]
lea r14d, [r10 - 1]
movups xmmword [rbp - 0x28], xmm0
mov dword [rbp - 0x78], r8d
movups xmm0, xmmword [rdx + 0x4206c8]
mov byte [rsp + 0x48], r9b
movups xmmword [rbp - 0x18], xmm1
mov dword [rsp + 0x40], eax
movups xmmword [rbp - 8], xmm0
mov dword [rsp + 0x5c], r14d
movsd xmm0, qword [rdx + 0x420658]
movsd qword [rsp + 0x38], xmm0
cmp dword [rdx + 0x4206c8], r14d
je 0x1401842fc
xorps xmm0, xmm0
movups xmmword [rdx + 0x4206a8], xmm0
movups xmmword [rdx + 0x4206b8], xmm0
movups xmmword [rdx + 0x4206c8], xmm0
movsxd r13, r10d
mov rax, rbx
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x30], rbx
test r11d, r11d
jle 0x140186d9e
mov qword [rsp + 0x148], rsi
lea rbx, [0x140000000]
mov qword [rsp + 0x150], rdi
mov r8, 0xffffffffffbffa96
sub r8, rdx
mov qword [rsp + 0x158], r12
cmp dword [rdx + 0x4206d8], 0
mov qword [rbp - 0x48], r8
lea r8, [rdx + 0x40056a]
mov qword [rsp + 0x110], r15
jne 0x140185863
mov qword [rbp - 0x70], r8
cmp dword [rdx + 0x434], 0
jne 0x140186d7e
mov rdi, rcx
mov qword [rsp + 0x50], rcx
add rcx, rax
mov qword [rsp + 0x68], rcx
add rcx, rax
mov qword [rbp - 0x78], rcx
add rcx, rax
mov qword [rsp + 0x60], rcx
add rcx, rax
mov qword [rbp - 0x40], rcx
cmp r13, 2
jle 0x1401843c1
movsxd r8, r14d
lea rcx, [rbp - 0x28]
mov rdx, rdi
call fcn.14022eea0
test eax, eax
jne 0x1401843c1
mov edi, dword [rbp - 4]
mov esi, edi
mov r15d, dword [rbp + 4]
mov r12d, r15d
mov r8d, dword [rbp]
jmp 0x140184446
movsxd r15, r14d
lea rcx, [rbp - 0x28]
mov r8, r15
mov dword [rbp - 8], r14d
mov rdx, rdi
call fcn.14022e460
xor edx, edx
mov esi, 0x12345678
mov r8d, 0x23456789
mov r12d, 0x34567890
test r14d, r14d
jle 0x140184436
nop
movzx ecx, byte [rdx + rdi]
inc rdx
movzx eax, sil
xor rcx, rax
shr esi, 8
xor esi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, sil
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r12b
shr r12d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r15
jl 0x1401843f0
mov edi, esi
mov dword [rbp - 4], esi
mov dword [rbp], r8d
mov r15d, r12d
mov dword [rbp + 4], r12d
mov rax, qword [rsp + 0x50]
movzx ecx, byte [rax + r13 - 1]
movzx eax, sil
xor rcx, rax
shr esi, 8
xor esi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, sil
add eax, r8d
imul ecx, eax, 0x8088405
inc ecx
mov eax, ecx
shr rcx, 0x18
mov qword [rbp - 0x58], rax
movzx eax, r12b
xor rcx, rax
shr r12d, 8
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x24], r12d
cmp r13, 2
jle 0x1401844b7
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0x28]
movsxd r8, r14d
call fcn.14022eea0
test eax, eax
jne 0x1401844b7
mov r8d, dword [rbp]
jmp 0x140184547
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0x28]
movsxd r8, r14d
mov dword [rbp - 8], r14d
call fcn.14022e460
xor edx, edx
movsxd r9, r14d
mov edi, 0x12345678
mov r8d, 0x23456789
mov r15d, 0x34567890
test r14d, r14d
jle 0x14018453c
mov r14, qword [rsp + 0x68]
nop dword [rax]
movzx ecx, byte [rdx + r14]
inc rdx
movzx eax, dil
xor rcx, rax
shr edi, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, dil
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r15b
shr r15d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r9
jl 0x1401844f0
mov r14d, dword [rsp + 0x5c]
mov dword [rbp - 4], edi
mov dword [rbp], r8d
mov dword [rbp + 4], r15d
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rax + r13 - 1]
movzx eax, dil
xor rcx, rax
shr edi, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, dil
add eax, r8d
imul ecx, eax, 0x8088405
inc ecx
mov eax, ecx
shr rcx, 0x18
mov qword [rsp + 0x78], rax
movzx eax, r15b
xor rcx, rax
shr r15d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
cmp r13, 2
mov dword [rsp + 0x28], r15d
mov r13, qword [rbp - 0x78]
jle 0x1401845c3
movsxd r8, r14d
lea rcx, [rbp - 0x28]
mov rdx, r13
call fcn.14022eea0
test eax, eax
jne 0x1401845c3
mov r13d, dword [rbp - 4]
mov r8d, dword [rbp]
mov r14d, dword [rbp + 4]
jmp 0x14018465a
movsxd r8, r14d
lea rcx, [rbp - 0x28]
mov rdx, r13
mov qword [rsp + 0x68], r8
mov dword [rbp - 8], r14d
call fcn.14022e460
mov r9, qword [rsp + 0x68]
xor edx, edx
mov r13d, 0x12345678
mov r8d, 0x23456789
mov r14d, 0x34567890
test r9, r9
jle 0x14018464e
mov r12, qword [rbp - 0x78]
nop dword [rax]
movzx ecx, byte [rdx + r12]
inc rdx
movzx eax, r13b
xor rcx, rax
shr r13d, 8
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, r13b
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r14b
shr r14d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r14d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r9
jl 0x140184600
mov r12d, dword [rsp + 0x24]
mov dword [rbp - 4], r13d
mov dword [rbp], r8d
mov dword [rbp + 4], r14d
mov rax, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x68]
movzx ecx, byte [rdx + rax - 1]
movzx eax, r13b
xor rcx, rax
shr r13d, 8
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, r13b
add eax, r8d
imul ecx, eax, 0x8088405
inc ecx
mov eax, ecx
shr rcx, 0x18
mov qword [rbp - 0x78], rax
movzx eax, r14b
xor rcx, rax
shr r14d, 8
xor r14d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x2c], r14d
cmp rdx, 2
jle 0x1401846d9
movsxd r8, dword [rsp + 0x5c]
lea rcx, [rbp - 0x28]
mov rdx, qword [rsp + 0x60]
call fcn.14022eea0
test eax, eax
jne 0x1401846d9
mov r10d, dword [rbp - 4]
mov r8d, dword [rbp]
mov r9d, dword [rbp + 4]
jmp 0x14018477a
movsxd rax, dword [rsp + 0x5c]
lea rcx, [rbp - 0x28]
mov rdx, qword [rsp + 0x60]
mov r8, rax
mov dword [rbp - 8], eax
mov qword [rsp + 0x68], rax
call fcn.14022e460
mov r11, qword [rsp + 0x68]
xor edx, edx
mov r10d, 0x12345678
mov r8d, 0x23456789
mov r9d, 0x34567890
test r11, r11
jle 0x14018476e
mov r15, qword [rsp + 0x60]
nop word [rax + rax]
movzx ecx, byte [r15 + rdx]
inc rdx
movzx eax, r10b
xor rcx, rax
shr r10d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, r10b
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r9b
shr r9d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r11
jl 0x140184720
mov r15d, dword [rsp + 0x28]
mov dword [rbp - 4], r10d
mov dword [rbp], r8d
mov dword [rbp + 4], r9d
mov rax, qword [rbp - 0x68]
mov rcx, qword [rsp + 0x60]
movzx ecx, byte [rax + rcx - 1]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
movzx edx, r10b
shr r10d, 8
lea eax, [r8 + rdx]
imul ecx, eax, 0x8088405
movzx eax, r9b
shr r9d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r12w
shr rax, 2
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, sil
xor rcx, rax
shr esi, 8
mov dword [rsp + 0x20], r9d
movzx r9d, byte [rsp + 0x38]
xor rcx, r9
movzx eax, r15w
shr rax, 2
xor esi, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, dil
xor rcx, rax
shr edi, 8
xor rcx, r9
movzx eax, r14w
shr rax, 2
movzx r12d, sil
mov dword [rsp + 0x34], esi
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, r13b
xor rcx, rax
shr r13d, 8
movzx eax, word [rsp + 0x20]
xor rcx, r9
shr rax, 2
movzx r11d, dil
mov dword [rsp + 0x50], edi
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x38]
xor rcx, rdx
mov edx, dword [rsp + 0x24]
xor rcx, rax
mov eax, r12d
movzx r9d, r13b
add eax, dword [rbp - 0x58]
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
imul ecx, eax, 0x8088405
mov eax, r11d
add eax, dword [rsp + 0x78]
imul esi, eax, 0x8088405
mov eax, r9d
add eax, dword [rbp - 0x78]
imul r14d, eax, 0x8088405
inc ecx
mov dword [rsp + 0x30], r10d
mov edi, ecx
shr rcx, 0x18
inc esi
movzx r10d, r10b
inc r14d
lea eax, [r8 + r10]
imul r15d, eax, 0x8088405
movzx eax, dl
xor rcx, rax
shr edx, 8
inc r15d
xor edx, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x24], edx
mov r8d, dword [rsp + 0x28]
mov ecx, esi
mov edx, dword [rsp + 0x2c]
shr rcx, 0x18
movzx eax, r8b
xor rcx, rax
shr r8d, 8
movzx eax, dl
shr edx, 8
shr r13d, 8
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r8d
xor edx, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r15d
shr rcx, 0x18
mov dword [rsp + 0x2c], edx
mov edx, dword [rsp + 0x20]
movzx eax, dl
xor rcx, rax
shr edx, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor edx, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], edx
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x39]
xor rcx, r12
mov r12d, dword [rsp + 0x34]
xor rcx, rax
movzx eax, r8w
shr rax, 2
shr r12d, 8
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx edx, r12b
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x39]
xor rcx, r11
mov r11d, dword [rsp + 0x50]
xor rcx, rax
movzx eax, word [rsp + 0x2c]
shr rax, 2
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
movzx r8d, r11b
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x39]
xor rcx, rax
movzx eax, word [rsp + 0x20]
shr rax, 2
xor rcx, r9
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x39]
xor rcx, rax
movzx r9d, r13b
mov eax, dword [rsp + 0x30]
xor rcx, r10
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r10d, al
lea eax, [rdi + rdx]
imul ecx, eax, 0x8088405
lea eax, [rsi + r8]
imul esi, eax, 0x8088405
lea eax, [r14 + r9]
imul r14d, eax, 0x8088405
lea eax, [r15 + r10]
imul r15d, eax, 0x8088405
movzx eax, byte [rsp + 0x24]
inc ecx
mov edi, ecx
inc esi
inc r14d
shr rcx, 0x18
inc r15d
xor rcx, rax
mov eax, dword [rsp + 0x24]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
mov dword [rsp + 0x24], eax
movzx eax, byte [rsp + 0x28]
shr rcx, 0x18
xor rcx, rax
shr r12d, 8
mov eax, dword [rsp + 0x28]
shr eax, 8
shr r11d, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
mov dword [rsp + 0x28], eax
movzx eax, byte [rsp + 0x2c]
shr rcx, 0x18
xor rcx, rax
shr r13d, 8
mov eax, dword [rsp + 0x2c]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r15d
mov dword [rsp + 0x2c], eax
movzx eax, byte [rsp + 0x20]
shr rcx, 0x18
xor rcx, rax
mov eax, dword [rsp + 0x20]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], eax
movzx eax, word [rsp + 0x24]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3a]
xor rcx, rdx
xor rcx, rax
movzx eax, word [rsp + 0x28]
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x2c]
xor rcx, r8
shr rax, 2
movzx edx, r12b
mov dword [rsp + 0x34], r12d
movzx r12d, byte [rsp + 0x3a]
xor rcx, r12
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r9
shr rax, 2
xor rcx, r12
mov dword [rsp + 0x50], r11d
movzx r11d, r11b
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r10
mov r10d, dword [rsp + 0x24]
xor rcx, r12
shr eax, 8
movzx r8d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r9d, al
lea eax, [rdi + rdx]
imul ecx, eax, 0x8088405
lea eax, [rsi + r11]
imul esi, eax, 0x8088405
lea eax, [r14 + r8]
imul r14d, eax, 0x8088405
lea eax, [r15 + r9]
imul r15d, eax, 0x8088405
inc ecx
movzx eax, r10b
inc esi
mov r12d, ecx
inc r14d
inc r15d
shr rcx, 0x18
xor rcx, rax
mov edi, dword [rsp + 0x2c]
shr r10d, 8
shr r13d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x24], r10d
mov r10d, dword [rsp + 0x28]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
movzx eax, dil
shr edi, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r10d
mov r10d, dword [rsp + 0x20]
movzx eax, r10b
shr r10d, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r15d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x2c], edi
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r10d
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x34]
xor rcx, rdx
movzx edx, byte [rsp + 0x3b]
shr eax, 8
xor rcx, rdx
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r10d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x50]
xor rcx, rdx
shr eax, 8
xor rcx, r11
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x50], eax
movzx edx, al
movzx eax, di
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r8
movzx r8d, byte [rsp + 0x3b]
shr rax, 2
xor rcx, r8
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r9
shr eax, 8
xor rcx, r8
movzx r11d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx edi, al
lea eax, [r12 + r10]
imul ecx, eax, 0x8088405
lea eax, [rsi + rdx]
imul esi, eax, 0x8088405
lea eax, [r14 + r11]
imul r14d, eax, 0x8088405
lea eax, [r15 + rdi]
imul r15d, eax, 0x8088405
inc ecx
inc esi
mov r12d, ecx
inc r14d
inc r15d
mov r8d, dword [rsp + 0x24]
mov r9d, dword [rsp + 0x2c]
shr rcx, 0x18
movzx eax, r8b
xor rcx, rax
shr r8d, 8
shr r13d, 8
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x24], r8d
mov r8d, dword [rsp + 0x28]
movzx eax, r8b
xor rcx, rax
shr r8d, 8
movzx eax, r9b
shr r9d, 8
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r8d
mov r8d, dword [rsp + 0x20]
movzx eax, r8b
shr r8d, 8
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r15d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x2c], r9d
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r8d
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3c]
xor rcx, rax
mov eax, dword [rsp + 0x34]
shr eax, 8
xor rcx, r10
movzx r10d, byte [rsp + 0x3c]
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r8d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x50]
xor rcx, rdx
shr eax, 8
xor rcx, r10
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x50], eax
movzx edx, al
movzx eax, r9w
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r10
xor rcx, r11
shr rax, 2
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r10
xor rcx, rdi
shr eax, 8
movzx r9d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r10d, al
lea eax, [r12 + r8]
imul ecx, eax, 0x8088405
lea eax, [rsi + rdx]
imul edi, eax, 0x8088405
lea eax, [r14 + r9]
imul esi, eax, 0x8088405
inc ecx
inc edi
mov r11d, ecx
inc esi
mov r12d, dword [rsp + 0x28]
lea eax, [r15 + r10]
mov r15d, dword [rsp + 0x24]
imul r14d, eax, 0x8088405
shr rcx, 0x18
movzx eax, r15b
xor rcx, rax
shr r15d, 8
movzx eax, r12b
shr r12d, 8
inc r14d
shr r13d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x24], r15d
mov r15d, dword [rsp + 0x2c]
movzx eax, r15b
shr r15d, 8
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r12d
movzx eax, byte [rsp + 0x20]
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x2c], r15d
mov eax, dword [rsp + 0x20]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], eax
movzx eax, word [rsp + 0x24]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3d]
xor rcx, r8
xor rcx, rax
mov eax, dword [rsp + 0x34]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r8d, al
movzx eax, r12w
mov r12d, dword [rsp + 0x50]
shr rax, 2
shr r12d, 8
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3d]
xor rcx, rdx
xor rcx, rax
movzx eax, r15w
movzx r15d, byte [rsp + 0x3d]
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx edx, r12b
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r9
xor rcx, r15
shr rax, 2
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r10
xor rcx, r15
shr eax, 8
movzx r9d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r10d, al
lea eax, [r11 + r8]
imul ecx, eax, 0x8088405
lea eax, [rdi + rdx]
imul edi, eax, 0x8088405
inc ecx
inc edi
mov r15d, ecx
mov r11d, dword [rsp + 0x24]
lea eax, [rsi + r9]
imul esi, eax, 0x8088405
lea eax, [r14 + r10]
shr rcx, 0x18
imul r14d, eax, 0x8088405
movzx eax, r11b
xor rcx, rax
shr r11d, 8
inc esi
shr r12d, 8
shr r13d, 8
inc r14d
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
mov dword [rsp + 0x24], r11d
mov r11d, dword [rsp + 0x28]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x28], r11d
mov r11d, dword [rsp + 0x2c]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
mov dword [rsp + 0x2c], r11d
mov r11d, dword [rsp + 0x20]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r11d
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x34]
xor rcx, r8
movzx r8d, byte [rsp + 0x3e]
xor rcx, r8
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r11d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x2c]
xor rcx, r8
xor rcx, rdx
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r8
xor rcx, r9
shr rax, 2
movzx edx, r12b
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3e]
xor rcx, rax
movzx r8d, r13b
mov eax, dword [rsp + 0x30]
xor rcx, r10
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r9d, al
lea eax, [r15 + r11]
imul ecx, eax, 0x8088405
lea eax, [rdi + rdx]
inc ecx
mov r15d, ecx
imul edi, eax, 0x8088405
mov r10d, dword [rsp + 0x24]
lea eax, [rsi + r8]
imul esi, eax, 0x8088405
inc edi
shr rcx, 0x18
lea eax, [r14 + r9]
imul r14d, eax, 0x8088405
movzx eax, r10b
xor rcx, rax
shr r10d, 8
inc esi
shr r12d, 8
shr r13d, 8
inc r14d
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
mov dword [rsp + 0x24], r10d
mov r10d, dword [rsp + 0x28]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x28], r10d
mov r10d, dword [rsp + 0x2c]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
mov dword [rsp + 0x2c], r10d
mov r10d, dword [rsp + 0x20]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r10d
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3f]
xor rcx, rax
mov eax, dword [rsp + 0x34]
xor rcx, r11
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r10d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3f]
xor rcx, rdx
xor rcx, rax
movzx eax, word [rsp + 0x2c]
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r8
movzx r8d, byte [rsp + 0x3f]
xor rcx, r8
shr rax, 2
mov dword [rsp + 0x50], r12d
movzx edx, r12b
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r9
xor rcx, r8
shr eax, 8
movzx r11d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r8d, al
lea eax, [r15 + r10]
imul ecx, eax, 0x8088405
inc ecx
mov r9d, dword [rsp + 0x24]
lea eax, [rdi + rdx]
mov edi, dword [rsp + 0x28]
imul r12d, eax, 0x8088405
lea eax, [rsi + r11]
imul esi, eax, 0x8088405
lea eax, [r14 + r8]
imul r14d, eax, 0x8088405
mov r15d, ecx
shr rcx, 0x18
movzx eax, r9b
inc r12d
xor rcx, rax
shr r9d, 8
movzx eax, dil
inc esi
shr edi, 8
inc r14d
shr r13d, 8
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r12d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x24], r9d
mov r9d, dword [rsp + 0x2c]
movzx eax, r9b
shr r9d, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], edi
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
mov dword [rsp + 0x2c], r9d
mov r9d, dword [rsp + 0x20]
movzx eax, r9b
xor rcx, rax
shr r9d, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r9d
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x40]
xor rcx, rax
mov eax, dword [rsp + 0x34]
shr eax, 8
xor rcx, r10
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r9d, al
movzx eax, di
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x50]
xor rcx, rdx
movzx edx, byte [rsp + 0x40]
xor rcx, rdx
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x50], eax
movzx edi, al
movzx eax, word [rsp + 0x2c]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, rdx
xor rcx, r11
shr rax, 2
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r8
xor rcx, rdx
shr eax, 8
movzx r10d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx edx, al
lea eax, [r15 + r9]
shr r13d, 8
mov r15d, dword [rsp + 0x24]
imul ecx, eax, 0x8088405
lea eax, [r12 + rdi]
mov r12d, dword [rsp + 0x2c]
imul r11d, eax, 0x8088405
lea eax, [rsi + r10]
imul esi, eax, 0x8088405
lea eax, [r14 + rdx]
imul r14d, eax, 0x8088405
inc ecx
movzx eax, r15b
mov r8d, ecx
shr rcx, 0x18
inc r11d
xor rcx, rax
shr r15d, 8
inc esi
inc r14d
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r11d
shr rcx, 0x18
mov dword [rsp + 0x24], r15d
mov r15d, dword [rsp + 0x28]
movzx eax, r15b
xor rcx, rax
shr r15d, 8
movzx eax, r12b
shr r12d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r15d
mov r15d, dword [rsp + 0x20]
movzx eax, r15b
shr r15d, 8
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x41]
xor rcx, r9
xor rcx, rax
mov dword [rsp + 0x20], r15d
movzx eax, word [rsp + 0x28]
mov r15d, dword [rsp + 0x34]
shr rax, 2
shr r15d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x78], r15d
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x41]
xor rcx, rax
movzx r9d, r15b
xor rcx, rdi
movzx eax, r12w
mov edi, dword [rsp + 0x50]
shr rax, 2
shr edi, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x41]
xor rcx, rax
movzx eax, word [rsp + 0x20]
xor rcx, r10
shr rax, 2
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x41]
xor rcx, rdx
mov edx, dword [rsp + 0x30]
xor rcx, rax
shr edx, 8
xor edx, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], edx
lea eax, [r8 + r9]
shr r15d, 8
imul ecx, eax, 0x8088405
movzx eax, dil
add eax, r11d
mov r11d, dword [rsp + 0x24]
imul r10d, eax, 0x8088405
movzx eax, r13b
add eax, esi
inc ecx
imul esi, eax, 0x8088405
mov r8d, ecx
shr rcx, 0x18
inc r10d
movzx eax, dl
add eax, r14d
mov qword [rsp + 0x78], r10
movzx r14d, byte [rsp + 0x42]
inc esi
imul edx, eax, 0x8088405
movzx eax, r11b
xor rcx, rax
shr r11d, 8
mov dword [rsp + 0x2c], esi
inc edx
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r10d
mov r10d, dword [rsp + 0x28]
shr rcx, 0x18
movzx eax, r10b
xor rcx, rax
mov dword [rsp + 0x60], edx
movzx eax, r12b
shr r10d, 8
shr r12d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
mov esi, dword [rsp + 0x20]
shr rcx, 0x18
xor rcx, rax
mov dword [rbp - 0x58], r11d
movzx eax, sil
shr esi, 8
mov byte [rsp + 0x58], r10b
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edx
shr rcx, 0x18
xor rcx, rax
movzx eax, r10w
shr rax, 2
xor esi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, byte [rax + rbx + 0x3112d0]
mov dword [rsp + 0x50], eax
movzx eax, r12w
shr rax, 2
movzx eax, byte [rax + rbx + 0x3112d0]
mov dword [rsp + 0x34], eax
movzx eax, si
shr rax, 2
movzx eax, byte [rax + rbx + 0x3112d0]
mov byte [rsp + 0x70], al
movzx eax, r11w
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
xor rcx, r9
movzx eax, r15b
movzx r9d, byte [rsp + 0x48]
xor rcx, r14
movzx edx, byte [rbx + rcx*4 + 0x26fa00]
xor edx, eax
movzx eax, r11b
add edx, r8d
shr r11d, 8
imul ecx, edx, 0x8088405
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r11w
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
mov r11, qword [rbp - 0x70]
cmp byte [rdx + rbx + 0x3112d0], r9b
je 0x140185713
mov byte [r11 - 2], 1
mov byte [rsp + 0x58], r10b
mov eax, dword [rsp + 0x50]
movzx ecx, dil
xor rcx, rax
shr edi, 8
xor rcx, r14
movzx eax, dil
shr r10d, 8
movzx edx, byte [rbx + rcx*4 + 0x26fa00]
xor edx, eax
movzx eax, byte [rsp + 0x58]
add edx, dword [rsp + 0x78]
imul ecx, edx, 0x8088405
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r10w
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
cmp byte [rdx + rbx + 0x3112d0], r9b
je 0x140185770
mov byte [r11 - 1], 1
mov ecx, dword [rsp + 0x34]
movzx eax, r13b
xor rcx, rax
shr r13d, 8
xor rcx, r14
movzx eax, r13b
movzx ecx, byte [rbx + rcx*4 + 0x26fa00]
xor ecx, eax
movzx eax, r12b
add ecx, dword [rsp + 0x2c]
imul ecx, ecx, 0x8088405
shr r12d, 8
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r12w
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
cmp byte [rdx + rbx + 0x3112d0], r9b
je 0x1401857cc
mov byte [r11], 1
movzx eax, byte [rsp + 0x70]
mov r8d, dword [rsp + 0x30]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
xor rcx, r14
movzx eax, r8b
movzx edx, byte [rbx + rcx*4 + 0x26fa00]
xor edx, eax
movzx eax, sil
add edx, dword [rsp + 0x60]
imul ecx, edx, 0x8088405
shr esi, 8
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, si
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
cmp byte [rdx + rbx + 0x3112d0], r9b
je 0x14018582d
mov byte [r11 + 1], 1
movsxd rdx, dword [rbp - 0x60]
add r11, 4
mov rax, qword [rbp - 0x48]
mov r14d, dword [rsp + 0x5c]
add rax, r11
mov rcx, qword [rbp - 0x40]
cmp rax, rdx
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x30]
mov r13, qword [rbp - 0x68]
mov qword [rbp - 0x70], r11
jl 0x140184360
jmp 0x140186d7e
mov qword [rbp - 0x70], r8
nop word [rax + rax]
cmp dword [rdx + 0x434], 0
jne 0x140186d7e
mov rdi, rcx
mov qword [rsp + 0x78], rcx
add rcx, rax
mov qword [rsp + 0x68], rcx
add rcx, rax
mov qword [rsp + 0x60], rcx
add rcx, rax
mov qword [rsp + 0x50], rcx
add rcx, rax
mov qword [rbp - 0x40], rcx
cmp r13, 2
jle 0x1401858d2
movsxd r8, r14d
lea rcx, [rbp - 0x28]
mov rdx, rdi
call fcn.14022eea0
test eax, eax
jne 0x1401858d2
mov edi, dword [rbp - 4]
mov esi, edi
mov r15d, dword [rbp + 4]
mov r12d, r15d
mov r8d, dword [rbp]
jmp 0x140185956
movsxd r15, r14d
lea rcx, [rbp - 0x28]
mov r8, r15
mov dword [rbp - 8], r14d
mov rdx, rdi
call fcn.14022e460
xor edx, edx
mov esi, 0x12345678
mov r8d, 0x23456789
mov r12d, 0x34567890
test r14d, r14d
jle 0x140185946
movzx ecx, byte [rdi + rdx]
inc rdx
movzx eax, sil
xor rcx, rax
shr esi, 8
xor esi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, sil
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r12b
shr r12d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r15
jl 0x140185900
mov edi, esi
mov dword [rbp - 4], esi
mov dword [rbp], r8d
mov r15d, r12d
mov dword [rbp + 4], r12d
mov rax, qword [rsp + 0x78]
movzx ecx, byte [rax + r13 - 1]
movzx eax, sil
xor rcx, rax
shr esi, 8
xor esi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, sil
add eax, r8d
imul ecx, eax, 0x8088405
inc ecx
mov eax, ecx
shr rcx, 0x18
mov qword [rbp - 0x58], rax
movzx eax, r12b
xor rcx, rax
shr r12d, 8
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x24], r12d
cmp r13, 2
jle 0x1401859c7
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0x28]
movsxd r8, r14d
call fcn.14022eea0
test eax, eax
jne 0x1401859c7
mov r8d, dword [rbp]
jmp 0x140185a57
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0x28]
movsxd r8, r14d
mov dword [rbp - 8], r14d
call fcn.14022e460
xor edx, edx
movsxd r9, r14d
mov edi, 0x12345678
mov r8d, 0x23456789
mov r15d, 0x34567890
test r14d, r14d
jle 0x140185a4c
mov r14, qword [rsp + 0x68]
nop dword [rax]
movzx ecx, byte [r14 + rdx]
inc rdx
movzx eax, dil
xor rcx, rax
shr edi, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, dil
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r15b
shr r15d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r9
jl 0x140185a00
mov r14d, dword [rsp + 0x5c]
mov dword [rbp - 4], edi
mov dword [rbp], r8d
mov dword [rbp + 4], r15d
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rax + r13 - 1]
movzx eax, dil
xor rcx, rax
shr edi, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, dil
add eax, r8d
imul ecx, eax, 0x8088405
inc ecx
mov eax, ecx
shr rcx, 0x18
mov qword [rsp + 0x68], rax
movzx eax, r15b
xor rcx, rax
shr r15d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
cmp r13, 2
mov dword [rsp + 0x28], r15d
mov r13, qword [rsp + 0x60]
jle 0x140185ad4
movsxd r8, r14d
lea rcx, [rbp - 0x28]
mov rdx, r13
call fcn.14022eea0
test eax, eax
jne 0x140185ad4
mov r13d, dword [rbp - 4]
mov r8d, dword [rbp]
mov r14d, dword [rbp + 4]
jmp 0x140185b6a
movsxd r8, r14d
lea rcx, [rbp - 0x28]
mov rdx, r13
mov qword [rsp + 0x78], r8
mov dword [rbp - 8], r14d
call fcn.14022e460
mov r9, qword [rsp + 0x78]
xor edx, edx
mov r13d, 0x12345678
mov r8d, 0x23456789
mov r14d, 0x34567890
test r9, r9
jle 0x140185b5e
mov r12, qword [rsp + 0x60]
nop
movzx ecx, byte [rdx + r12]
inc rdx
movzx eax, r13b
xor rcx, rax
shr r13d, 8
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, r13b
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r14b
shr r14d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r14d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r9
jl 0x140185b10
mov r12d, dword [rsp + 0x24]
mov dword [rbp - 4], r13d
mov dword [rbp], r8d
mov dword [rbp + 4], r14d
mov rax, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x68]
movzx ecx, byte [rdx + rax - 1]
movzx eax, r13b
xor rcx, rax
shr r13d, 8
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, r13b
add eax, r8d
imul ecx, eax, 0x8088405
inc ecx
mov eax, ecx
shr rcx, 0x18
mov qword [rsp + 0x60], rax
movzx eax, r14b
xor rcx, rax
shr r14d, 8
xor r14d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x2c], r14d
cmp rdx, 2
jle 0x140185beb
movsxd r8, dword [rsp + 0x5c]
lea rcx, [rbp - 0x28]
mov rdx, qword [rsp + 0x50]
call fcn.14022eea0
test eax, eax
jne 0x140185beb
mov r10d, dword [rbp - 4]
mov r8d, dword [rbp]
mov r9d, dword [rbp + 4]
jmp 0x140185c8a
movsxd rax, dword [rsp + 0x5c]
lea rcx, [rbp - 0x28]
mov rdx, qword [rsp + 0x50]
mov r8, rax
mov dword [rbp - 8], eax
mov qword [rsp + 0x78], rax
call fcn.14022e460
mov r11, qword [rsp + 0x78]
xor edx, edx
mov r10d, 0x12345678
mov r8d, 0x23456789
mov r9d, 0x34567890
test r11, r11
jle 0x140185c7e
mov r15, qword [rsp + 0x50]
nop dword [rax]
movzx ecx, byte [r15 + rdx]
inc rdx
movzx eax, r10b
xor rcx, rax
shr r10d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, r10b
add eax, r8d
imul ecx, eax, 0x8088405
movzx eax, r9b
shr r9d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
cmp rdx, r11
jl 0x140185c30
mov r15d, dword [rsp + 0x28]
mov dword [rbp - 4], r10d
mov dword [rbp], r8d
mov dword [rbp + 4], r9d
mov rax, qword [rbp - 0x68]
mov rcx, qword [rsp + 0x50]
movzx ecx, byte [rax + rcx - 1]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
movzx edx, r10b
shr r10d, 8
lea eax, [r8 + rdx]
imul ecx, eax, 0x8088405
movzx eax, r9b
shr r9d, 8
inc ecx
mov r8d, ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r12w
shr rax, 2
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, sil
xor rcx, rax
shr esi, 8
mov dword [rsp + 0x20], r9d
movzx r9d, byte [rsp + 0x38]
xor rcx, r9
movzx eax, r15w
shr rax, 2
xor esi, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, dil
xor rcx, rax
shr edi, 8
xor rcx, r9
movzx eax, r14w
shr rax, 2
movzx r12d, sil
mov dword [rsp + 0x34], esi
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, r13b
xor rcx, rax
shr r13d, 8
movzx eax, word [rsp + 0x20]
xor rcx, r9
shr rax, 2
movzx r11d, dil
mov dword [rsp + 0x50], edi
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x38]
xor rcx, rdx
mov edx, dword [rsp + 0x24]
xor rcx, rax
mov eax, r12d
movzx r9d, r13b
add eax, dword [rbp - 0x58]
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
imul ecx, eax, 0x8088405
mov eax, r11d
add eax, dword [rsp + 0x68]
imul esi, eax, 0x8088405
mov eax, r9d
add eax, dword [rsp + 0x60]
imul r14d, eax, 0x8088405
inc ecx
mov dword [rsp + 0x30], r10d
mov edi, ecx
shr rcx, 0x18
inc esi
movzx r10d, r10b
inc r14d
lea eax, [r8 + r10]
imul r15d, eax, 0x8088405
movzx eax, dl
xor rcx, rax
shr edx, 8
inc r15d
xor edx, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x24], edx
mov r8d, dword [rsp + 0x28]
mov ecx, esi
mov edx, dword [rsp + 0x2c]
shr rcx, 0x18
movzx eax, r8b
xor rcx, rax
shr r8d, 8
movzx eax, dl
shr edx, 8
shr r13d, 8
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r8d
xor edx, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r15d
shr rcx, 0x18
mov dword [rsp + 0x2c], edx
mov edx, dword [rsp + 0x20]
movzx eax, dl
xor rcx, rax
shr edx, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor edx, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], edx
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x39]
xor rcx, r12
mov r12d, dword [rsp + 0x50]
xor rcx, rax
mov eax, dword [rsp + 0x34]
shr eax, 8
shr r12d, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx edx, al
movzx eax, r8w
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x2c]
xor rcx, r11
movzx r11d, byte [rsp + 0x39]
xor rcx, r11
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r9
xor rcx, r11
shr rax, 2
movzx r8d, r12b
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r10
xor rcx, r11
shr eax, 8
movzx r9d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r10d, al
lea eax, [rdi + rdx]
imul ecx, eax, 0x8088405
lea eax, [rsi + r8]
imul edi, eax, 0x8088405
lea eax, [r14 + r9]
imul esi, eax, 0x8088405
lea eax, [r15 + r10]
mov r15d, dword [rsp + 0x24]
imul r14d, eax, 0x8088405
inc ecx
movzx eax, r15b
mov r11d, ecx
inc edi
shr rcx, 0x18
inc esi
xor rcx, rax
inc r14d
shr r15d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
mov dword [rsp + 0x24], r15d
mov r15d, dword [rsp + 0x28]
movzx eax, r15b
xor rcx, rax
shr r15d, 8
shr r12d, 8
shr r13d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x28], r15d
mov r15d, dword [rsp + 0x2c]
movzx eax, r15b
xor rcx, rax
shr r15d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
mov dword [rsp + 0x2c], r15d
mov r15d, dword [rsp + 0x20]
movzx eax, r15b
xor rcx, rax
shr r15d, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r15d
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3a]
xor rcx, rdx
mov r15d, dword [rsp + 0x34]
xor rcx, rax
movzx eax, word [rsp + 0x28]
shr rax, 2
shr r15d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
movzx edx, r15b
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3a]
xor rcx, r8
xor rcx, rax
movzx eax, word [rsp + 0x2c]
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3a]
xor rcx, r9
xor rcx, rax
movzx r8d, r12b
movzx eax, word [rsp + 0x20]
shr rax, 2
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx r9d, r13b
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3a]
xor rcx, r10
xor rcx, rax
mov eax, dword [rsp + 0x30]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r10d, al
lea eax, [r11 + rdx]
imul ecx, eax, 0x8088405
lea eax, [rdi + r8]
imul edi, eax, 0x8088405
lea eax, [rsi + r9]
imul esi, eax, 0x8088405
lea eax, [r14 + r10]
imul r14d, eax, 0x8088405
movzx eax, byte [rsp + 0x24]
inc ecx
mov r11d, ecx
inc edi
inc esi
shr rcx, 0x18
inc r14d
xor rcx, rax
mov eax, dword [rsp + 0x24]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
mov dword [rsp + 0x24], eax
movzx eax, byte [rsp + 0x28]
shr rcx, 0x18
xor rcx, rax
shr r15d, 8
mov eax, dword [rsp + 0x28]
shr eax, 8
shr r12d, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
mov dword [rsp + 0x28], eax
movzx eax, byte [rsp + 0x2c]
shr rcx, 0x18
xor rcx, rax
shr r13d, 8
mov eax, dword [rsp + 0x2c]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
mov dword [rsp + 0x2c], eax
movzx eax, byte [rsp + 0x20]
shr rcx, 0x18
xor rcx, rax
mov eax, dword [rsp + 0x20]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], eax
movzx eax, word [rsp + 0x24]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3b]
xor rcx, rdx
xor rcx, rax
movzx eax, word [rsp + 0x28]
shr rax, 2
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x2c]
xor rcx, r8
shr rax, 2
movzx edx, r15b
mov dword [rsp + 0x34], r15d
movzx r15d, byte [rsp + 0x3b]
xor rcx, r15
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r9
shr rax, 2
xor rcx, r15
movzx r8d, r12b
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r10
shr eax, 8
xor rcx, r15
movzx r9d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r10d, al
lea eax, [r11 + rdx]
mov r11d, dword [rsp + 0x24]
imul ecx, eax, 0x8088405
lea eax, [rdi + r8]
imul edi, eax, 0x8088405
lea eax, [rsi + r9]
imul esi, eax, 0x8088405
lea eax, [r14 + r10]
imul r14d, eax, 0x8088405
movzx eax, r11b
inc ecx
inc edi
mov r15d, ecx
inc esi
inc r14d
shr rcx, 0x18
xor rcx, rax
shr r11d, 8
shr r12d, 8
shr r13d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
mov dword [rsp + 0x24], r11d
mov r11d, dword [rsp + 0x28]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x28], r11d
mov r11d, dword [rsp + 0x2c]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
mov dword [rsp + 0x2c], r11d
mov r11d, dword [rsp + 0x20]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r11d
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x34]
xor rcx, rdx
movzx edx, byte [rsp + 0x3c]
shr eax, 8
xor rcx, rdx
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r11d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x2c]
xor rcx, r8
xor rcx, rdx
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r9
movzx r9d, byte [rsp + 0x3c]
shr rax, 2
xor rcx, r9
movzx edx, r12b
mov dword [rsp + 0x50], r12d
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r10
shr eax, 8
xor rcx, r9
movzx r8d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx r9d, al
lea eax, [r15 + r11]
imul ecx, eax, 0x8088405
lea eax, [rdi + rdx]
imul r12d, eax, 0x8088405
lea eax, [rsi + r8]
imul esi, eax, 0x8088405
lea eax, [r14 + r9]
imul r14d, eax, 0x8088405
inc ecx
inc r12d
mov r15d, ecx
inc esi
inc r14d
shr rcx, 0x18
mov r10d, dword [rsp + 0x24]
mov edi, dword [rsp + 0x2c]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
shr r13d, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r12d
shr rcx, 0x18
mov dword [rsp + 0x24], r10d
mov r10d, dword [rsp + 0x28]
movzx eax, r10b
xor rcx, rax
shr r10d, 8
movzx eax, dil
shr edi, 8
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r10d
mov r10d, dword [rsp + 0x20]
movzx eax, r10b
shr r10d, 8
xor edi, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x2c], edi
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r10d
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3d]
xor rcx, rax
mov eax, dword [rsp + 0x34]
shr eax, 8
xor rcx, r11
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r10d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x50]
xor rcx, rdx
movzx edx, byte [rsp + 0x3d]
shr eax, 8
xor rcx, rdx
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x50], eax
movzx r11d, al
movzx eax, di
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r8
shr rax, 2
xor rcx, rdx
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, r9
shr eax, 8
xor rcx, rdx
movzx edi, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx edx, al
lea eax, [r15 + r10]
imul ecx, eax, 0x8088405
lea eax, [r12 + r11]
imul r12d, eax, 0x8088405
lea eax, [rsi + rdi]
imul esi, eax, 0x8088405
lea eax, [r14 + rdx]
inc ecx
inc r12d
mov r15d, ecx
inc esi
mov r8d, dword [rsp + 0x24]
mov r9d, dword [rsp + 0x2c]
imul r14d, eax, 0x8088405
shr rcx, 0x18
movzx eax, r8b
xor rcx, rax
shr r8d, 8
shr r13d, 8
inc r14d
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r12d
shr rcx, 0x18
mov dword [rsp + 0x24], r8d
mov r8d, dword [rsp + 0x28]
movzx eax, r8b
xor rcx, rax
shr r8d, 8
movzx eax, r9b
shr r9d, 8
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r8d
mov r8d, dword [rsp + 0x20]
movzx eax, r8b
shr r8d, 8
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x2c], r9d
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r8d
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x34]
xor rcx, r10
movzx r10d, byte [rsp + 0x3e]
shr eax, 8
xor rcx, r10
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r8d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x50]
xor rcx, r10
xor rcx, r11
shr eax, 8
movzx r11d, byte [rsp + 0x3e]
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x50], eax
movzx r10d, al
movzx eax, r9w
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r11
xor rcx, rdi
shr rax, 2
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, rdx
xor rcx, r11
shr eax, 8
movzx r9d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx edx, al
lea eax, [r15 + r8]
imul ecx, eax, 0x8088405
lea eax, [r12 + r10]
imul edi, eax, 0x8088405
lea eax, [rsi + r9]
inc ecx
inc edi
mov r11d, ecx
mov r15d, dword [rsp + 0x24]
mov r12d, dword [rsp + 0x28]
imul esi, eax, 0x8088405
lea eax, [r14 + rdx]
imul r14d, eax, 0x8088405
shr rcx, 0x18
movzx eax, r15b
xor rcx, rax
shr r15d, 8
movzx eax, r12b
inc esi
shr r12d, 8
inc r14d
shr r13d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x24], r15d
mov r15d, dword [rsp + 0x2c]
movzx eax, r15b
shr r15d, 8
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x28], r12d
movzx eax, byte [rsp + 0x20]
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov dword [rsp + 0x2c], r15d
mov eax, dword [rsp + 0x20]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], eax
movzx eax, word [rsp + 0x24]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3f]
xor rcx, r8
xor rcx, rax
mov eax, dword [rsp + 0x34]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r8d, al
movzx eax, r12w
mov r12d, dword [rsp + 0x50]
shr rax, 2
shr r12d, 8
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x3f]
xor rcx, rax
movzx eax, r15w
movzx r15d, byte [rsp + 0x3f]
xor rcx, r10
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r9
xor rcx, r15
shr rax, 2
movzx r10d, r12b
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x30]
xor rcx, rdx
xor rcx, r15
shr eax, 8
movzx r9d, r13b
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx edx, al
lea eax, [r11 + r8]
imul ecx, eax, 0x8088405
lea eax, [rdi + r10]
inc ecx
mov r15d, ecx
mov r11d, dword [rsp + 0x24]
imul edi, eax, 0x8088405
lea eax, [rsi + r9]
imul esi, eax, 0x8088405
lea eax, [r14 + rdx]
shr rcx, 0x18
imul r14d, eax, 0x8088405
movzx eax, r11b
xor rcx, rax
shr r11d, 8
inc edi
shr r12d, 8
inc esi
shr r13d, 8
inc r14d
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
mov dword [rsp + 0x24], r11d
mov r11d, dword [rsp + 0x28]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x28], r11d
mov r11d, dword [rsp + 0x2c]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
mov dword [rsp + 0x2c], r11d
mov r11d, dword [rsp + 0x20]
movzx eax, r11b
xor rcx, rax
shr r11d, 8
movzx eax, word [rsp + 0x24]
shr rax, 2
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], r11d
movzx ecx, byte [rax + rbx + 0x3112d0]
mov eax, dword [rsp + 0x34]
xor rcx, r8
movzx r8d, byte [rsp + 0x40]
xor rcx, r8
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x34], eax
movzx r11d, al
movzx eax, word [rsp + 0x28]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x2c]
xor rcx, r10
xor rcx, r8
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r9
xor rcx, r8
shr rax, 2
mov dword [rsp + 0x7c], r12d
movzx r10d, r12b
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x40]
xor rcx, rdx
xor rcx, rax
movzx r8d, r13b
mov eax, dword [rsp + 0x30]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x30], eax
movzx edx, al
lea eax, [r15 + r11]
imul ecx, eax, 0x8088405
inc ecx
mov r15d, dword [rsp + 0x24]
lea eax, [rdi + r10]
mov r9d, ecx
imul edi, eax, 0x8088405
lea eax, [rsi + r8]
shr rcx, 0x18
imul esi, eax, 0x8088405
lea eax, [r14 + rdx]
imul r14d, eax, 0x8088405
movzx eax, r15b
xor rcx, rax
shr r15d, 8
inc edi
shr r12d, 8
inc esi
shr r13d, 8
inc r14d
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
shr rcx, 0x18
mov dword [rsp + 0x24], r15d
mov r15d, dword [rsp + 0x28]
movzx eax, r15b
xor rcx, rax
shr r15d, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
mov dword [rsp + 0x28], r15d
mov r15d, dword [rsp + 0x2c]
movzx eax, r15b
xor rcx, rax
shr r15d, 8
movzx eax, byte [rsp + 0x20]
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r14d
shr rcx, 0x18
xor rcx, rax
mov eax, dword [rsp + 0x20]
shr eax, 8
xor eax, dword [rbx + rcx*4 + 0x26fa00]
mov dword [rsp + 0x20], eax
movzx eax, word [rsp + 0x24]
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, byte [rsp + 0x41]
xor rcx, r11
mov r11d, dword [rsp + 0x34]
xor rcx, rax
shr r11d, 8
xor r11d, dword [rbx + rcx*4 + 0x26fa00]
movzx eax, r11b
mov dword [rsp + 0x60], eax
movzx eax, word [rsp + 0x28]
shr rax, 2
mov dword [rsp + 0x78], r11d
movzx ecx, byte [rax + rbx + 0x3112d0]
xor rcx, r10
movzx eax, r15w
movzx r10d, byte [rsp + 0x41]
xor rcx, r10
shr rax, 2
xor r12d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, word [rsp + 0x20]
xor rcx, r8
xor rcx, r10
shr rax, 2
xor r13d, dword [rbx + rcx*4 + 0x26fa00]
movzx ecx, byte [rax + rbx + 0x3112d0]
xor rcx, rdx
mov edx, dword [rsp + 0x60]
xor rcx, r10
mov r10d, dword [rsp + 0x30]
shr r10d, 8
lea eax, [r9 + rdx]
xor r10d, dword [rbx + rcx*4 + 0x26fa00]
imul ecx, eax, 0x8088405
movzx eax, r12b
inc ecx
mov qword [rsp + 0x78], rcx
mov r9d, dword [rsp + 0x24]
add eax, edi
imul r8d, eax, 0x8088405
shr rcx, 0x18
movzx eax, r13b
add eax, esi
imul edi, eax, 0x8088405
inc r8d
movzx eax, r10b
add eax, r14d
mov dword [rsp + 0x50], r8d
mov r14d, dword [rbp - 0x78]
imul esi, eax, 0x8088405
inc edi
movzx eax, r9b
xor rcx, rax
mov dword [rsp + 0x30], edi
shr r9d, 8
inc esi
xor r9d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, r8d
mov r8d, dword [rsp + 0x28]
shr rcx, 0x18
movzx eax, r8b
xor rcx, rax
shr r8d, 8
movzx eax, r15b
shr r15d, 8
mov dword [rsp + 0x68], esi
xor r8d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, edi
mov edi, dword [rsp + 0x20]
shr rcx, 0x18
xor rcx, rax
mov dword [rbp - 0x58], r9d
movzx eax, dil
shr edi, 8
xor r15d, dword [rbx + rcx*4 + 0x26fa00]
mov ecx, esi
shr rcx, 0x18
xor rcx, rax
movzx eax, r9w
shr rax, 2
xor edi, dword [rbx + rcx*4 + 0x26fa00]
movzx esi, byte [rax + rbx + 0x3112d0]
movzx eax, r8w
shr rax, 2
movzx ecx, byte [rax + rbx + 0x3112d0]
movzx eax, r15w
shr rax, 2
mov dword [rsp + 0x60], ecx
movzx eax, byte [rax + rbx + 0x3112d0]
mov dword [rsp + 0x34], eax
movzx eax, di
shr rax, 2
movzx eax, byte [rax + rbx + 0x3112d0]
mov dword [rsp + 0x2c], eax
cmp esi, r14d
jne 0x140186de2
movzx eax, dl
mov ecx, esi
movzx esi, byte [rsp + 0x42]
xor rcx, rax
xor rcx, rsi
shr r11d, 8
movzx eax, r11b
movzx ecx, byte [rbx + rcx*4 + 0x26fa00]
xor ecx, eax
movzx eax, r9b
add ecx, dword [rsp + 0x78]
imul ecx, ecx, 0x8088405
shr r9d, 8
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r9w
movzx r9d, byte [rsp + 0x48]
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
cmp byte [rdx + rbx + 0x3112d0], r9b
jne 0x140186ded
mov r11, qword [rbp - 0x70]
mov eax, dword [rsp + 0x60]
cmp eax, r14d
jne 0x140186c7f
movzx ecx, r12b
xor rcx, rax
shr r12d, 8
movzx eax, sil
xor rcx, rax
movzx eax, r12b
movzx ecx, byte [rbx + rcx*4 + 0x26fa00]
xor ecx, eax
movzx eax, r8b
add ecx, dword [rsp + 0x50]
imul ecx, ecx, 0x8088405
shr r8d, 8
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r8w
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
cmp byte [rdx + rbx + 0x3112d0], r9b
je 0x140186c84
mov byte [r11 - 1], 1
mov edx, dword [rsp + 0x34]
cmp edx, r14d
jne 0x140186ce5
movzx eax, sil
movzx ecx, r13b
xor rcx, rax
shr r13d, 8
xor rcx, rdx
movzx eax, r13b
movzx ecx, byte [rbx + rcx*4 + 0x26fa00]
xor ecx, eax
movzx eax, r15b
add ecx, dword [rsp + 0x30]
imul ecx, ecx, 0x8088405
shr r15d, 8
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, r15w
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
cmp byte [rdx + rbx + 0x3112d0], r9b
je 0x140186ce9
mov byte [r11], 1
mov edx, dword [rsp + 0x2c]
cmp edx, r14d
jne 0x140186d48
movzx eax, sil
movzx ecx, r10b
xor rcx, rax
shr r10d, 8
xor rcx, rdx
movzx eax, r10b
movzx ecx, byte [rbx + rcx*4 + 0x26fa00]
xor ecx, eax
movzx eax, dil
add ecx, dword [rsp + 0x68]
imul ecx, ecx, 0x8088405
shr edi, 8
inc ecx
shr rcx, 0x18
xor rcx, rax
movzx eax, di
movzx edx, word [rbx + rcx*4 + 0x26fa00]
xor rdx, rax
shr rdx, 2
cmp byte [rdx + rbx + 0x3112d0], r9b
je 0x140186d4d
mov byte [r11 + 1], 1
movsxd rdx, dword [rbp - 0x60]
add r11, 4
mov rax, qword [rbp - 0x48]
mov r14d, dword [rsp + 0x5c]
add rax, r11
mov rcx, qword [rbp - 0x40]
cmp rax, rdx
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x30]
mov r13, qword [rbp - 0x68]
mov qword [rbp - 0x70], r11
jl 0x140185870
mov r12, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x148]
mov r15, qword [rsp + 0x110]
mov rax, qword [rbp - 0x38]
movups xmm0, xmmword [rbp - 0x28]
movups xmm1, xmmword [rbp - 0x18]
movups xmmword [rax + 0x4206a8], xmm0
movups xmm0, xmmword [rbp - 8]
movups xmmword [rax + 0x4206b8], xmm1
movups xmmword [rax + 0x4206c8], xmm0
mov eax, 1
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.1401f74b0
add rsp, 0x118
pop r14
pop r13
pop rbx
pop rbp
ret
movzx r9d, byte [rsp + 0x48]
movzx esi, byte [rsp + 0x42]
mov r11, qword [rbp - 0x70]
mov byte [r11 - 2], 1
jmp 0x140186c1e