Function at 0x140007f20
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov rsi, rdx
mov rdi, rcx
movzx eax, byte [rcx + 0x178]
mov dword [rdx + 0x6e0], 0
test rax, rax
je 0x1400080ae
mov r14, qword [rdi + 0x18]
or r14, qword [rdi + 8]
or r14, qword [rdi + 0x28]
or r14, qword [rdi + 0x38]
or r14, qword [rdi + 0x48]
mov rdx, qword [rdi + 0x58]
or r14, rdx
mov rcx, qword [rdi + 0x68]
mov qword [rsp + 0x48], rcx
mov r12, qword [rcx]
tzcnt rbx, rdx
mov rcx, rbx
shl rcx, 4
lea r11, [0x14006d3a0]
movsxd r8, dword [rcx + r11 + 8]
lea r9, [0x14006d1a0]
mov r9, qword [r9 + rbx*8]
mov r10, r9
and r10, r12
mov r11, qword [rcx + r11]
imul r10, r11
shr r10, 0x34
add r10, r8
lea r13, [0x1400a91c0]
mov r15, qword [r13 + r10*8]
mov r10, r15
and r10, r14
xor r10, r12
and r10, r9
imul r10, r11
shr r10, 0x34
add r10, r8
xor r15, qword [r13 + r10*8]
lea r11, [0x14006cda0]
movsxd r8, dword [rcx + r11 + 8]
lea r9, [0x14006cba0]
mov r9, qword [r9 + rbx*8]
mov r10, r9
and r10, r12
mov rcx, qword [rcx + r11]
imul r10, rcx
shr r10, 0x37
add r10, r8
mov r11, qword [r13 + r10*8]
mov r10, r11
and r10, r14
mov qword [rsp + 0x20], r12
xor r10, r12
and r10, r9
imul r10, rcx
movsxd r12, dword [rdi + 0x17c]
shr r10, 0x37
add r10, r8
mov ecx, dword [rdi + r12*4 + 0x180]
xor r11, qword [r13 + r10*8]
mov rbp, r11
mov r9d, 1
mov r8, rcx
mov qword [rsp + 0x58], rcx
shl r9, cl
mov qword [rsp + 0x90], r9
mov rcx, qword [rdi + 0x40]
mov r8, qword [rdi + 0x30]
or r8, rcx
or rcx, qword [rdi + 0x20]
and rbp, rcx
mov qword [rsp + 0x30], r8
and r15, r8
je 0x14000820e
lea r8, [0x1400719f0]
mov r9, r15
nop word cs:[rax + rax]
tzcnt r10, r9
lea r11, [r9 - 1]
shl r10, 9
add r10, r8
or r15, qword [r10 + rbx*8]
and r9, r11
jne 0x140008090
jmp 0x140008211
mov r15, qword [rdi + 0x10]
or r15, qword [rdi]
or r15, qword [rdi + 0x20]
or r15, qword [rdi + 0x30]
or r15, qword [rdi + 0x40]
mov rdx, qword [rdi + 0x50]
or r15, rdx
mov r13, qword [rdi + 0x68]
mov r12, qword [r13]
tzcnt r14, rdx
mov rcx, r14
shl rcx, 4
lea r9, [0x14006d3a0]
movsxd r8, dword [rcx + r9 + 8]
lea rax, [0x14006d1a0]
mov r10, qword [rax + r14*8]
mov rax, r10
and rax, r12
mov r11, qword [rcx + r9]
imul rax, r11
shr rax, 0x34
add rax, r8
lea rbp, [0x1400a91c0]
mov rax, qword [rbp + rax*8]
mov r9, rax
and r9, r15
xor r9, r12
and r9, r10
imul r9, r11
shr r9, 0x34
add r9, r8
lea rbx, [0x14006cda0]
lea r8, [0x14006cba0]
mov r10, qword [r8 + r14*8]
mov r8, r10
and r8, r12
movsxd r11, dword [rcx + rbx + 8]
mov rcx, qword [rcx + rbx]
imul r8, rcx
shr r8, 0x37
add r8, r11
mov r8, qword [rbp + r8*8]
mov rbx, r8
and rbx, r15
mov qword [rsp + 0x48], r12
xor rbx, r12
and rbx, r10
imul rbx, rcx
movsxd rcx, dword [rdi + 0x17c]
mov qword [rsp + 0x70], rcx
mov ecx, dword [rdi + rcx*4 + 0x180]
mov r12d, 1
mov r10, rcx
mov qword [rsp + 0x58], rcx
shl r12, cl
mov qword [rsp + 0x90], r12
shr rbx, 0x37
add rbx, r11
mov r12, qword [rbp + r9*8]
xor r12, rax
mov rcx, qword [rdi + 0x48]
mov r9, qword [rdi + 0x38]
or r9, rcx
mov rbp, qword [rbp + rbx*8]
xor rbp, r8
or rcx, qword [rdi + 0x28]
and rbp, rcx
mov qword [rsp + 0x20], r9
and r12, r9
je 0x14000869e
lea r9, [0x1400719f0]
mov r10, r12
mov rbx, r14
nop word cs:[rax + rax]
tzcnt r11, r10
lea r14, [r10 - 1]
shl r11, 9
add r11, r9
or r12, qword [r11 + rbx*8]
and r10, r14
jne 0x1400081f0
jmp 0x1400086a4
xor r15d, r15d
mov r8, qword [rsp + 0x20]
and r8, r14
mov qword [rsp + 0x28], r8
shl r12, 4
mov qword [rsp + 0x70], r12
xor r12d, r12d
test rbp, rbp
je 0x14000825b
lea r8, [0x1400719f0]
mov r9, rbp
nop dword [rax]
tzcnt r10, r9
lea r11, [r9 - 1]
shl r10, 9
add r10, r8
or rbp, qword [r10 + rbx*8]
and r9, r11
jne 0x140008240
jmp 0x14000825d
xor ebp, ebp
lea r8, [rax*8]
or r8, 0x50
tzcnt r8, qword [rdi + r8]
mov r9, rax
shl r9, 9
lea rax, [r9 + rax*8]
lea r9, [0x140070de0]
add rax, r9
mov r9, qword [rdi]
mov r10, qword [rdi + 0x10]
and r9, qword [rax + r8*8]
lea rax, [0x14006d7a0]
and r10, qword [rax + r8*8]
or r10, r9
mov qword [rsp + 0x68], rbx
lea r9, [0x14006d9a0]
mov rax, qword [rdi + 0x50]
and rax, qword [r9 + r8*8]
or rax, r10
lea r9, [0x14006cba0]
mov r9, qword [r9 + r8*8]
mov r10, r8
shl r10, 4
lea rbx, [0x14006cda0]
movsxd r11, dword [r10 + rbx + 8]
mov r13, qword [rsp + 0x20]
and r9, r13
imul r9, qword [r10 + rbx]
shr r9, 0x37
add r9, r11
lea r11, [0x1400a91c0]
and rcx, qword [r11 + r9*8]
lea r9, [0x14006d1a0]
mov r8, qword [r9 + r8*8]
or rcx, rax
and r8, r13
lea rax, [0x14006d3a0]
imul r8, qword [r10 + rax]
movsxd r9, dword [rsp + 0x58]
mov qword [rsp + 0x88], r9
movsxd rax, dword [r10 + rax + 8]
shr r8, 0x34
add r8, rax
mov rax, qword [rsp + 0x70]
mov r9d, dword [rdi + rax + 0x1188]
mov dword [rsp + 0x3c], r9d
mov r9, qword [rsp + 0x30]
and r9, qword [r11 + r8*8]
mov eax, dword [rdi + rax + 0x118c]
mov dword [rsp + 0x7c], eax
or r9, rcx
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x60], rbp
mov rbx, rbp
or rbx, r15
xor rdx, r13
mov rcx, rdi
call fcn.14000aa10
mov qword [rsp + 0x80], rax
or rax, qword [rsp + 0x28]
not rax
mov rcx, qword [rsp + 0x68]
lea rdx, [0x14006d9a0]
and rax, qword [rdx + rcx*8]
mov rbp, qword [rsp + 0x68]
je 0x1400083e5
mov r13, rbp
mov ecx, ebp
shl ecx, 0xe
xor r12d, r12d
nop dword [rax]
mov rdx, r12
tzcnt r8, rax
lea r9, [rax - 1]
mov r10d, dword [rdi + r8*4 + 0x70]
mov r11d, dword [rdi + r13*4 + 0x70]
shl r11d, 0x14
or r11d, ecx
shl r10d, 0xa
xor r10d, r11d
lea r8d, [r8*8]
or r8d, r10d
inc r12
movsxd r8, r8d
mov dword [rsi + 0x6e0], r12d
mov qword [rsi + rdx*8], r8
and rax, r9
jne 0x1400083a0
not qword [rsp + 0x28]
not rbx
popcnt rax, qword [rsp + 0x30]
mov qword [rsp + 0x40], r15
je 0x140008572
cmp eax, 1
mov r15, qword [rsp + 0x48]
jne 0x14000a857
mov r8, qword [rsp + 0x30]
tzcnt rax, r8
shl rax, 9
mov rdx, rbx
lea rcx, [0x1400719f0]
add rcx, rax
mov r14, qword [rcx + rbp*8]
xor r14, r8
and r14, qword [rsp + 0x28]
mov rcx, qword [rdi + 8]
mov rax, rbx
mov qword [rsp + 0x50], rbx
and rdx, rcx
and rdx, 0xffffffffffff00ff
mov qword [rsp + 0x28], r14
je 0x140008972
movabs rbp, 0x8000000000000000
lea r8, [0x14006fbe0]
jmp 0x140008482
lea r10, [rdx - 1]
and rdx, r10
mov r15, qword [rsp + 0x48]
je 0x14000896e
tzcnt r10, rdx
mov r11, qword [r15]
mov rbx, qword [r8 + r10*8 + 0xc00]
mov r14, rbx
and r14, r11
or r14, rbp
tzcnt r14, r14
xor rbx, qword [r8 + r14*8 + 0xc00]
lea rax, [0x140070de0]
mov r14, qword [rax + r10*8 + 0x208]
mov r15, qword [r8 + r10*8 + 0x200]
mov r13, r15
and r13, r11
or r13, 1
bsr r13, r13
xor r15, qword [r8 + r13*8 + 0x200]
and r14, qword [rsp + 0x30]
not r11
lea rax, [0x140079f80]
and r11, qword [rax + r10*8 + 0x200]
or r15, rbx
and r11, r15
or r11, r14
mov r14, qword [rsp + 0x28]
and r11, r14
je 0x140008470
mov ebx, r10d
shl ebx, 0xe
movsxd r12, r12d
lea r14d, [r12 + 1]
nop word cs:[rax + rax]
tzcnt r15, r11
lea r13, [r11 - 1]
mov ecx, dword [rdi + r15*4 + 0x70]
mov r9d, dword [rdi + r10*4 + 0x70]
shl r9d, 0x14
or r9d, ebx
shl ecx, 0xa
xor ecx, r9d
lea r9d, [r15*8]
or r9d, ecx
movsxd rcx, r9d
mov dword [rsi + 0x6e0], r14d
mov qword [rsi + r12*8], rcx
inc r12
lea ecx, [r14 + 1]
mov r14d, ecx
and r11, r13
jne 0x140008520
mov r14, qword [rsp + 0x28]
jmp 0x140008470
xor qword [rsp + 0x20], r14
mov r8, rbx
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x50], rbx
and r8, rcx
and r8, 0xffffffffffff00ff
je 0x140008edf
lea rcx, [0x14006fbe0]
lea r9, [0x140079f80]
mov r13, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
jmp 0x1400085cd
lea rax, [r8 - 1]
and r8, rax
je 0x140008c36
tzcnt rax, r8
lea rdx, [0x140070de0]
mov r10, qword [rdx + rax*8 + 0x208]
and r10, qword [rsp + 0x20]
mov rdx, qword [r13]
mov r11, qword [rcx + rax*8 + 0xc00]
mov r14, r11
and r14, rdx
or r14, rbx
tzcnt r14, r14
xor r11, qword [rcx + r14*8 + 0xc00]
mov r14, qword [rcx + rax*8 + 0x200]
mov r15, r14
and r15, rdx
or r15, 1
bsr r15, r15
xor r14, qword [rcx + r15*8 + 0x200]
or r14, r11
not rdx
and rdx, qword [r9 + rax*8 + 0x200]
and rdx, r14
or rdx, r10
je 0x1400085c0
mov r10d, eax
shl r10d, 0xe
movsxd r12, r12d
lea r11d, [r12 + 1]
nop dword [rax + rax]
tzcnt r14, rdx
lea r15, [rdx - 1]
mov ebp, dword [rdi + r14*4 + 0x70]
mov r13d, dword [rdi + rax*4 + 0x70]
shl r13d, 0x14
or r13d, r10d
shl ebp, 0xa
xor ebp, r13d
lea r14d, [r14*8]
or r14d, ebp
movsxd r14, r14d
mov dword [rsi + 0x6e0], r11d
mov qword [rsi + r12*8], r14
inc r12
inc r11d
and rdx, r15
jne 0x140008650
mov r13, qword [rsp + 0x48]
jmp 0x1400085c0
xor r12d, r12d
mov rbx, r14
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x68], rbx
mov r9, qword [rsp + 0x48]
and r9, r15
mov qword [rsp + 0x28], r9
shl qword [rsp + 0x70], 4
xor r12d, r12d
test rbp, rbp
je 0x1400086fb
lea r9, [0x1400719f0]
mov r10, rbp
mov rbx, qword [rsp + 0x68]
nop dword [rax + rax]
tzcnt r11, r10
lea r14, [r10 - 1]
shl r11, 9
add r11, r9
or rbp, qword [r11 + rbx*8]
and r10, r14
jne 0x1400086e0
jmp 0x140008702
xor ebp, ebp
mov rbx, qword [rsp + 0x68]
lea r10, [0x140070de0]
mov r9, qword [rdi + 8]
and r9, qword [r10 + rbx*8]
mov r10, qword [rdi + 0x18]
lea r11, [0x14006d7a0]
and r10, qword [r11 + rbx*8]
or r10, r9
lea r9, [0x14006d9a0]
mov r14, qword [r9 + rbx*8]
and rcx, r8
mov r8, qword [rdi + 0x58]
and r8, r14
or rcx, r8
movsxd r8, dword [rsp + 0x58]
mov qword [rsp + 0x88], r8
or rcx, r10
mov r8, qword [rsp + 0x70]
mov r9d, dword [rdi + r8 + 0x1180]
mov dword [rsp + 0x3c], r9d
mov r9, qword [rsp + 0x20]
and r9, rax
mov eax, dword [rdi + r8 + 0x1184]
mov dword [rsp + 0x7c], eax
or r9, rcx
mov qword [rsp + 0x20], r9
mov rax, rbp
or rax, qword [rsp + 0x30]
mov qword [rsp + 0x40], rax
xor rdx, qword [rsp + 0x48]
mov rcx, rdi
call fcn.14000a870
mov qword [rsp + 0x80], rax
or rax, qword [rsp + 0x28]
not rax
and rax, r14
je 0x1400087f5
mov ecx, ebx
shl ecx, 0xe
xor r12d, r12d
mov rdx, r12
tzcnt r8, rax
lea r9, [rax - 1]
mov r10d, dword [rdi + r8*4 + 0x70]
mov r11d, dword [rdi + rbx*4 + 0x70]
shl r11d, 0x14
or r11d, ecx
shl r10d, 0xa
xor r10d, r11d
lea r8d, [r8*8]
or r8d, r10d
inc r12
movsxd r8, r8d
mov dword [rsi + 0x6e0], r12d
mov qword [rsi + rdx*8], r8
and rax, r9
jne 0x1400087b0
not qword [rsp + 0x28]
not qword [rsp + 0x40]
popcnt rax, qword [rsp + 0x20]
mov qword [rsp + 0x60], r13
je 0x140008db6
cmp eax, 1
jne 0x14000a857
mov rdx, qword [rsp + 0x20]
tzcnt rax, rdx
shl rax, 9
lea rcx, [0x1400719f0]
add rcx, rax
mov r15, qword [rcx + rbx*8]
xor r15, rdx
and r15, qword [rsp + 0x28]
mov rdx, qword [rdi]
mov rax, qword [rsp + 0x40]
mov r8, rax
and r8, rdx
movabs rcx, 0xff00ffffffffffff
and rcx, r8
mov qword [rsp + 0x28], r15
je 0x140009999
lea r8, [0x14006fbe0]
lea r9, [0x140079f80]
jmp 0x140008892
lea r10, [rcx - 1]
and rcx, r10
mov r13, qword [rsp + 0x60]
je 0x140009991
tzcnt r10, rcx
mov r11, qword [r13]
mov rbx, qword [r8 + r10*8 + 0xc00]
mov r14, rbx
and r14, r11
movabs rax, 0x8000000000000000
or r14, rax
tzcnt r14, r14
xor rbx, qword [r8 + r14*8 + 0xc00]
lea rax, [0x140070de0]
mov r14, qword [rax + r10*8]
mov r15, qword [r8 + r10*8 + 0x200]
mov r13, r15
and r13, r11
or r13, 1
bsr r13, r13
xor r15, qword [r8 + r13*8 + 0x200]
and r14, qword [rsp + 0x20]
not r11
and r11, qword [r9 + r10*8]
or r15, rbx
and r11, r15
mov r15, qword [rsp + 0x28]
or r11, r14
and r11, r15
je 0x140008880
mov ebx, r10d
shl ebx, 0xe
movsxd r12, r12d
lea r14d, [r12 + 1]
nop dword [rax]
tzcnt r15, r11
lea r13, [r11 - 1]
mov ebp, dword [rdi + r15*4 + 0x70]
mov edx, dword [rdi + r10*4 + 0x70]
shl edx, 0x14
or edx, ebx
shl ebp, 0xa
xor ebp, edx
lea edx, [r15*8]
or edx, ebp
movsxd rdx, edx
mov dword [rsi + 0x6e0], r14d
mov qword [rsi + r12*8], rdx
inc r12
lea edx, [r14 + 1]
mov r14d, edx
and r11, r13
jne 0x140008920
mov r15, qword [rsp + 0x28]
jmp 0x140008880
mov rcx, qword [rdi + 8]
and ecx, dword [rsp + 0x50]
and ecx, 0xff00
je 0x140008ae0
lea rax, [rsi + 0x18]
mov qword [rsp + 0x20], rax
jmp 0x14000899d
lea rdx, [rcx - 1]
and rcx, rdx
je 0x140008ae0
tzcnt r9, rcx
lea rax, [0x140070de0]
mov rdx, qword [rax + r9*8 + 0x208]
and rdx, qword [rsp + 0x30]
mov r10, qword [r15]
not r10
lea rax, [0x140079f80]
and r10, qword [rax + r9*8 + 0x200]
or r10, rdx
and r10, r14
je 0x140008990
mov r11d, r9d
shl r11d, 0xe
movsxd rbx, r12d
mov rax, qword [rsp + 0x20]
lea r15, [rax + rbx*8]
mov r12d, ebx
xor edx, edx
nop dword [rax + rax]
mov r13, rdx
tzcnt rdx, r10
lea r8, [r10 - 1]
mov eax, dword [rdi + rdx*4 + 0x70]
mov r14d, dword [rdi + r9*4 + 0x70]
shl r14d, 0x14
or r14d, r11d
shl eax, 0xa
xor eax, r14d
lea r14d, [rdx*8]
or eax, r14d
or eax, 1
cdqe
lea ebp, [r12 + r13]
inc ebp
mov dword [rsi + 0x6e0], ebp
mov qword [r15 + r13*8 - 0x18], rax
mov eax, dword [rdi + rdx*4 + 0x70]
mov ebp, dword [rdi + r9*4 + 0x70]
shl ebp, 0x14
or ebp, r11d
shl eax, 0xa
xor eax, ebp
or eax, r14d
or eax, 2
cdqe
lea ebp, [r12 + r13]
add ebp, 2
mov dword [rsi + 0x6e0], ebp
mov qword [r15 + r13*8 - 0x10], rax
mov eax, dword [rdi + rdx*4 + 0x70]
mov ebp, dword [rdi + r9*4 + 0x70]
shl ebp, 0x14
or ebp, r11d
shl eax, 0xa
xor eax, ebp
or eax, r14d
or eax, 3
cdqe
lea ebp, [r12 + r13]
add ebp, 3
mov dword [rsi + 0x6e0], ebp
mov qword [r15 + r13*8 - 8], rax
mov eax, dword [rdi + rdx*4 + 0x70]
mov edx, dword [rdi + r9*4 + 0x70]
shl edx, 0x14
or edx, r11d
shl eax, 0xa
xor eax, edx
or eax, r14d
or eax, 4
lea rdx, [r13 + 4]
cdqe
lea ebp, [r12 + r13]
add ebp, 4
mov dword [rsi + 0x6e0], ebp
mov qword [r15 + r13*8], rax
and r10, r8
jne 0x1400089f0
lea r12, [rbx + r13]
add r12, 4
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x28]
jmp 0x140008990
mov rcx, qword [rdi + 0x18]
and rcx, qword [rsp + 0x50]
jne 0x140008b19
mov rcx, qword [rdi + 0x48]
mov rdx, qword [rdi + 0x28]
or rdx, rcx
and rdx, qword [rsp + 0x50]
jne 0x140008b9d
jmp 0x140008c4d
lea rax, [rcx - 1]
and rcx, rax
je 0x140008aeb
tzcnt rdx, rcx
lea rax, [0x14006d7a0]
mov r8, qword [rax + rdx*8]
and r8, r14
je 0x140008b10
mov r9d, edx
shl r9d, 0xe
movsxd r12, r12d
lea r10d, [r12 + 1]
nop dword [rax]
tzcnt rax, r8
lea r11, [r8 - 1]
mov ebx, dword [rdi + rax*4 + 0x70]
mov ebp, dword [rdi + rdx*4 + 0x70]
shl ebp, 0x14
or ebp, r9d
shl ebx, 0xa
xor ebx, ebp
lea eax, [rax*8]
or eax, ebx
cdqe
mov dword [rsi + 0x6e0], r10d
mov qword [rsi + r12*8], rax
inc r12
lea eax, [r10 + 1]
mov r10d, eax
and r8, r11
jne 0x140008b40
jmp 0x140008b10
lea rax, [rdx - 1]
and rdx, rax
je 0x140008c49
tzcnt rcx, rdx
mov rax, rcx
shl rax, 4
lea r10, [0x14006cda0]
movsxd r8, dword [rax + r10 + 8]
lea r9, [0x14006cba0]
mov r9, qword [r9 + rcx*8]
and r9, qword [r15]
imul r9, qword [rax + r10]
shr r9, 0x37
add r9, r8
lea rax, [0x1400a91c0]
mov r8, qword [rax + r9*8]
and r8, r14
je 0x140008b90
mov r9d, ecx
shl r9d, 0xe
movsxd r12, r12d
lea r10d, [r12 + 1]
nop
tzcnt rax, r8
lea r11, [r8 - 1]
mov ebx, dword [rdi + rax*4 + 0x70]
mov ebp, dword [rdi + rcx*4 + 0x70]
shl ebp, 0x14
or ebp, r9d
shl ebx, 0xa
xor ebx, ebp
lea eax, [rax*8]
or eax, ebx
cdqe
mov dword [rsi + 0x6e0], r10d
mov qword [rsi + r12*8], rax
inc r12
lea eax, [r10 + 1]
mov r10d, eax
and r8, r11
jne 0x140008bf0
jmp 0x140008b90
mov rcx, qword [rdi + 8]
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x40]
jmp 0x140008ee7
mov rcx, qword [rdi + 0x48]
or rcx, qword [rdi + 0x38]
and rcx, qword [rsp + 0x50]
jne 0x140008d1d
mov rax, qword [rsp + 0x58]
mov ecx, eax
xor cl, 8
mov eax, 1
shl rax, cl
cmp qword [rsp + 0x30], rax
mov r11, qword [rsp + 0x40]
jne 0x14000a857
not r11
lea rax, [0x140070de0]
mov rcx, qword [rsp + 0x88]
and r11, qword [rax + rcx*8]
and r11, qword [rdi + 8]
je 0x14000a857
mov rax, qword [rsp + 0x58]
lea eax, [rax*8]
movsxd rcx, r12d
lea rdx, [rsi + rcx*8]
inc ecx
nop word cs:[rax + rax]
tzcnt r8, r11
lea r9, [r11 - 1]
mov r10d, dword [rdi + r8*4 + 0x70]
shl r10d, 0x14
shl r8d, 0xe
or r8d, r10d
or r8d, 0x3000
xor r8d, eax
or r8d, 7
movsxd r8, r8d
mov dword [rsi + 0x6e0], ecx
mov qword [rdx], r8
add rdx, 8
inc ecx
and r11, r9
jne 0x140008cc0
jmp 0x14000a857
lea rax, [rcx - 1]
and rcx, rax
je 0x140008c5c
tzcnt rdx, rcx
mov rax, rdx
shl rax, 4
lea r10, [0x14006d3a0]
movsxd r8, dword [rax + r10 + 8]
lea r9, [0x14006d1a0]
mov r9, qword [r9 + rdx*8]
and r9, qword [r15]
imul r9, qword [rax + r10]
shr r9, 0x34
add r9, r8
lea rax, [0x1400a91c0]
mov r8, qword [rax + r9*8]
and r8, r14
je 0x140008d10
mov r9d, edx
shl r9d, 0xe
movsxd r12, r12d
lea r10d, [r12 + 1]
nop
tzcnt rax, r8
lea r11, [r8 - 1]
mov ebx, dword [rdi + rax*4 + 0x70]
mov ebp, dword [rdi + rdx*4 + 0x70]
shl ebp, 0x14
or ebp, r9d
shl ebx, 0xa
xor ebx, ebp
lea eax, [rax*8]
or eax, ebx
cdqe
mov dword [rsi + 0x6e0], r10d
mov qword [rsi + r12*8], rax
inc r12
lea eax, [r10 + 1]
mov r10d, eax
and r8, r11
jne 0x140008d70
jmp 0x140008d10
xor qword [rsp + 0x48], r15
movabs rdx, 0xff00ffffffffffff
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x40]
and rcx, rax
and rcx, rdx
mov qword [rsp + 0x20], rbp
je 0x140009c79
lea rax, [0x14006fbe0]
lea r8, [0x140079f80]
jmp 0x140008e02
lea r9, [rcx - 1]
and rcx, r9
mov r13, qword [rsp + 0x60]
je 0x140009c76
tzcnt r9, rcx
lea rdx, [0x140070de0]
mov r11, qword [rdx + r9*8]
and r11, qword [rsp + 0x48]
mov r10, qword [r13]
mov r14, qword [rax + r9*8 + 0xc00]
mov r15, r14
and r15, r10
movabs rdx, 0x8000000000000000
or r15, rdx
tzcnt r15, r15
xor r14, qword [rax + r15*8 + 0xc00]
mov r15, qword [rax + r9*8 + 0x200]
mov r13, r15
and r13, r10
or r13, 1
bsr r13, r13
xor r15, qword [rax + r13*8 + 0x200]
or r15, r14
not r10
and r10, qword [r8 + r9*8]
and r10, r15
or r10, r11
je 0x140008df0
mov r11d, r9d
shl r11d, 0xe
movsxd r12, r12d
lea r14d, [r12 + 1]
nop word cs:[rax + rax]
tzcnt r15, r10
lea r13, [r10 - 1]
mov ebp, dword [rdi + r15*4 + 0x70]
mov edx, dword [rdi + r9*4 + 0x70]
shl edx, 0x14
or edx, r11d
shl ebp, 0xa
xor ebp, edx
lea edx, [r15*8]
or edx, ebp
movsxd rdx, edx
mov dword [rsi + 0x6e0], r14d
mov qword [rsi + r12*8], rdx
inc r12
lea edx, [r14 + 1]
mov r14d, edx
and r10, r13
jne 0x140008e90
mov rbp, qword [rsp + 0x20]
jmp 0x140008df0
mov r13, qword [rsp + 0x48]
mov r14, rbp
mov r8, qword [rsp + 0x50]
and r8d, ecx
and r8d, 0xff00
je 0x140009070
lea rax, [rsi + 0x18]
mov qword [rsp + 0x30], rax
jmp 0x140008f1d
lea rax, [r8 - 1]
and r8, rax
je 0x14000906c
tzcnt r10, r8
lea rax, [0x140070de0]
mov rax, qword [rax + r10*8 + 0x208]
and rax, qword [rsp + 0x20]
mov r11, qword [r13]
not r11
lea rcx, [0x140079f80]
and r11, qword [rcx + r10*8 + 0x200]
or r11, rax
je 0x140008f10
mov r13d, r10d
shl r13d, 0xe
movsxd r12, r12d
mov rax, qword [rsp + 0x30]
lea rdx, [rax + r12*8]
mov eax, r12d
xor r14d, r14d
nop word [rax + rax]
mov r9, r14
tzcnt r14, r11
lea rcx, [r11 - 1]
mov ebp, dword [rdi + r14*4 + 0x70]
mov r15d, dword [rdi + r10*4 + 0x70]
shl r15d, 0x14
or r15d, r13d
shl ebp, 0xa
xor ebp, r15d
lea r15d, [r14*8]
or ebp, r15d
or ebp, 1
movsxd rbp, ebp
lea ebx, [rax + r9]
inc ebx
mov dword [rsi + 0x6e0], ebx
mov qword [rdx + r9*8 - 0x18], rbp
mov ebx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r10*4 + 0x70]
shl ebp, 0x14
or ebp, r13d
shl ebx, 0xa
xor ebx, ebp
or ebx, r15d
or ebx, 2
movsxd rbx, ebx
lea ebp, [rax + r9]
add ebp, 2
mov dword [rsi + 0x6e0], ebp
mov qword [rdx + r9*8 - 0x10], rbx
mov ebx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r10*4 + 0x70]
shl ebp, 0x14
or ebp, r13d
shl ebx, 0xa
xor ebx, ebp
or ebx, r15d
or ebx, 3
movsxd rbx, ebx
lea ebp, [rax + r9]
add ebp, 3
mov dword [rsi + 0x6e0], ebp
mov qword [rdx + r9*8 - 8], rbx
mov ebx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r10*4 + 0x70]
shl ebp, 0x14
or ebp, r13d
shl ebx, 0xa
xor ebx, ebp
or ebx, r15d
or ebx, 4
lea r14, [r9 + 4]
movsxd rbx, ebx
lea ebp, [rax + r9]
add ebp, 4
mov dword [rsi + 0x6e0], ebp
mov qword [rdx + r9*8], rbx
and r11, rcx
jne 0x140008f70
add r12, r9
add r12, 4
mov r14, qword [rsp + 0x68]
mov r13, qword [rsp + 0x48]
mov r15, qword [rsp + 0x40]
jmp 0x140008f10
mov rcx, qword [rdi + 8]
mov r8, r15
and r8, rcx
and r8, 0xffffffffffff00ff
je 0x140009184
lea rcx, [0x14006fbe0]
lea rax, [0x140079f80]
jmp 0x1400090ad
lea rdx, [r8 - 1]
and r8, rdx
je 0x140009180
tzcnt rdx, r8
mov r9, qword [r13]
mov r10, qword [rcx + rdx*8 + 0xc00]
mov r11, r10
and r11, r9
movabs rbx, 0x8000000000000000
or r11, rbx
tzcnt r11, r11
xor r10, qword [rcx + r11*8 + 0xc00]
mov r11, qword [rcx + rdx*8 + 0x200]
mov rbx, r11
and rbx, r9
or rbx, 1
bsr rbx, rbx
xor r11, qword [rcx + rbx*8 + 0x200]
or r11, r10
not r9
and r9, qword [rax + rdx*8 + 0x200]
and r9, r11
and r9, r15
je 0x1400090a0
mov r10d, edx
shl r10d, 0xe
movsxd r12, r12d
lea r11d, [r12 + 1]
nop word cs:[rax + rax]
tzcnt rbx, r9
lea r14, [r9 - 1]
mov ebp, dword [rdi + rbx*4 + 0x70]
mov r15d, dword [rdi + rdx*4 + 0x70]
shl r15d, 0x14
or r15d, r10d
shl ebp, 0xa
xor ebp, r15d
lea ebx, [rbx*8]
or ebx, ebp
movsxd rbx, ebx
mov dword [rsi + 0x6e0], r11d
mov qword [rsi + r12*8], rbx
inc r12
inc r11d
and r9, r14
jne 0x140009130
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x40]
jmp 0x1400090a0
mov rcx, qword [rdi + 8]
mov rax, qword [rsp + 0x60]
and rax, rcx
and rax, 0xffffffffffff00ff
jne 0x1400091a9
jmp 0x14000922a
lea rcx, [rax - 1]
and rax, rcx
je 0x140009226
tzcnt rcx, rax
lea rdx, [0x140070de0]
mov rdx, qword [rdx + rcx*8 + 0x208]
and rdx, qword [rsp + 0x20]
and rdx, qword [rsp + 0x60]
je 0x1400091a0
mov r8d, ecx
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop dword [rax + rax]
tzcnt r10, rdx
lea r11, [rdx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rcx*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rdx, r11
jne 0x1400091e0
jmp 0x1400091a0
mov rcx, qword [rdi + 8]
and ecx, dword [rsp + 0x60]
and ecx, 0xff00
je 0x14000939a
lea rax, [rsi + 0x18]
mov qword [rsp + 0x30], rax
jmp 0x14000925d
lea rax, [rcx - 1]
and rcx, rax
je 0x14000939a
tzcnt r9, rcx
lea rax, [0x140070de0]
mov r10, qword [rax + r9*8 + 0x208]
and r10, qword [rsp + 0x20]
and r10, qword [rsp + 0x60]
je 0x140009250
mov r11d, r9d
shl r11d, 0xe
movsxd r12, r12d
mov rax, qword [rsp + 0x30]
lea rdx, [rax + r12*8]
mov eax, r12d
xor r14d, r14d
nop word cs:[rax + rax]
mov r13, r14
tzcnt r14, r10
lea r8, [r10 - 1]
mov ebx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r9*4 + 0x70]
shl ebp, 0x14
or ebp, r11d
shl ebx, 0xa
xor ebx, ebp
lea r15d, [r14*8]
or ebx, r15d
or ebx, 1
movsxd rbx, ebx
lea ebp, [rax + r13]
inc ebp
mov dword [rsi + 0x6e0], ebp
mov qword [rdx + r13*8 - 0x18], rbx
mov ebx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r9*4 + 0x70]
shl ebp, 0x14
or ebp, r11d
shl ebx, 0xa
xor ebx, ebp
or ebx, r15d
or ebx, 2
movsxd rbx, ebx
lea ebp, [rax + r13]
add ebp, 2
mov dword [rsi + 0x6e0], ebp
mov qword [rdx + r13*8 - 0x10], rbx
mov ebx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r9*4 + 0x70]
shl ebp, 0x14
or ebp, r11d
shl ebx, 0xa
xor ebx, ebp
or ebx, r15d
or ebx, 3
movsxd rbx, ebx
lea ebp, [rax + r13]
add ebp, 3
mov dword [rsi + 0x6e0], ebp
mov qword [rdx + r13*8 - 8], rbx
mov ebx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r9*4 + 0x70]
shl ebp, 0x14
or ebp, r11d
shl ebx, 0xa
xor ebx, ebp
or ebx, r15d
or ebx, 4
lea r14, [r13 + 4]
movsxd rbx, ebx
lea ebp, [rax + r13]
add ebp, 4
mov dword [rsi + 0x6e0], ebp
mov qword [rdx + r13*8], rbx
and r10, r8
jne 0x1400092a0
add r12, r13
add r12, 4
mov r14, qword [rsp + 0x68]
mov r13, qword [rsp + 0x48]
mov r15, qword [rsp + 0x40]
jmp 0x140009250
mov rax, qword [rdi + 0x18]
and rax, qword [rsp + 0x50]
jne 0x1400093d9
mov rcx, qword [rdi + 0x48]
mov r8, qword [rdi + 0x28]
or r8, rcx
mov rax, r8
and rax, qword [rsp + 0x50]
jne 0x14000945d
jmp 0x140009511
lea rcx, [rax - 1]
and rax, rcx
je 0x1400093a5
tzcnt rcx, rax
lea rdx, [0x14006d7a0]
mov rdx, qword [rdx + rcx*8]
and rdx, qword [rsp + 0x28]
je 0x1400093d0
mov r8d, ecx
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop
tzcnt r10, rdx
lea r11, [rdx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rcx*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rdx, r11
jne 0x140009400
jmp 0x1400093d0
lea rcx, [rax - 1]
and rax, rcx
je 0x140009506
tzcnt rcx, rax
mov rdx, rcx
shl rdx, 4
lea r10, [0x14006cda0]
movsxd r8, dword [rdx + r10 + 8]
lea r9, [0x14006cba0]
mov r9, qword [r9 + rcx*8]
and r9, qword [r13]
imul r9, qword [rdx + r10]
shr r9, 0x37
add r9, r8
lea rdx, [0x1400a91c0]
mov rdx, qword [rdx + r9*8]
and rdx, qword [rsp + 0x28]
je 0x140009450
mov r8d, ecx
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop word cs:[rax + rax]
tzcnt r10, rdx
lea r11, [rdx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rcx*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rdx, r11
jne 0x1400094c0
jmp 0x140009450
mov rcx, qword [rdi + 0x48]
mov r8, qword [rdi + 0x28]
or r8, rcx
and r8, qword [rsp + 0x60]
jne 0x14000952d
jmp 0x1400095d9
lea rax, [r8 - 1]
and r8, rax
je 0x1400095d5
tzcnt rax, r8
mov rcx, rax
shl rcx, 4
lea rdx, [0x14006cba0]
mov rdx, qword [rdx + rax*8]
and rdx, qword [r13]
lea r10, [0x14006cda0]
movsxd r9, dword [rcx + r10 + 8]
imul rdx, qword [rcx + r10]
shr rdx, 0x37
add rdx, r9
lea rcx, [0x1400a91c0]
mov rcx, qword [rcx + rdx*8]
and rcx, qword [rsp + 0x28]
and rcx, qword [rsp + 0x60]
je 0x140009520
mov edx, eax
shl edx, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop word cs:[rax + rax]
tzcnt r10, rcx
lea r11, [rcx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rax*4 + 0x70]
shl ebp, 0x14
or ebp, edx
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rcx, r11
jne 0x140009590
jmp 0x140009520
mov rcx, qword [rdi + 0x48]
or rcx, qword [rdi + 0x38]
and qword [rsp + 0x50], rcx
je 0x1400096af
mov rcx, qword [rsp + 0x50]
jmp 0x140009600
mov rcx, rbp
lea rax, [rbp - 1]
and rcx, rax
je 0x1400096a7
mov rbp, rcx
tzcnt rax, rcx
mov rcx, rax
shl rcx, 4
lea r9, [0x14006d3a0]
movsxd rdx, dword [rcx + r9 + 8]
lea r8, [0x14006d1a0]
mov r8, qword [r8 + rax*8]
and r8, qword [r13]
imul r8, qword [rcx + r9]
shr r8, 0x34
add r8, rdx
lea rcx, [0x1400a91c0]
mov rcx, qword [rcx + r8*8]
and rcx, qword [rsp + 0x28]
je 0x1400095f0
mov edx, eax
shl edx, 0xe
movsxd r12, r12d
lea r8d, [r12 + 1]
nop word cs:[rax + rax]
tzcnt r9, rcx
lea r10, [rcx - 1]
mov r11d, dword [rdi + r9*4 + 0x70]
mov ebx, dword [rdi + rax*4 + 0x70]
shl ebx, 0x14
or ebx, edx
shl r11d, 0xa
xor r11d, ebx
lea r9d, [r9*8]
or r9d, r11d
movsxd r9, r9d
mov dword [rsi + 0x6e0], r8d
mov qword [rsi + r12*8], r9
inc r12
inc r8d
and rcx, r10
jne 0x140009660
jmp 0x1400095f0
mov rcx, qword [rdi + 0x48]
or rcx, qword [rdi + 0x38]
and rcx, r15
jne 0x14000974d
not r15
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x90]
and rcx, rax
not rax
xor r8d, r8d
neg rcx
sbb r8, r8
or r8, rax
and r8, r15
lea rax, [0x140070de0]
mov rcx, qword [rsp + 0x88]
and r8, qword [rax + rcx*8]
and r8, qword [rdi + 8]
je 0x140009899
xor cl, 8
mov eax, 1
shl rax, cl
lea rcx, [0x14006fbe0]
mov rdx, qword [rcx + r14*8 + 0x600]
mov r9, qword [rcx + r14*8 + 0x800]
mov r10, qword [rsp + 0x58]
shl r10d, 3
mov qword [rsp + 0x58], r10
movabs r15, 0x8000000000000000
jmp 0x14000980d
lea rax, [rcx - 1]
and rcx, rax
je 0x1400096b8
tzcnt rax, rcx
mov rdx, rax
shl rdx, 4
lea r8, [0x14006d1a0]
mov r8, qword [r8 + rax*8]
and r8, qword [r13]
lea r10, [0x14006d3a0]
movsxd r9, dword [rdx + r10 + 8]
imul r8, qword [rdx + r10]
shr r8, 0x34
add r8, r9
lea rdx, [0x1400a91c0]
mov rdx, qword [rdx + r8*8]
and rdx, qword [rsp + 0x28]
and rdx, r15
je 0x140009740
mov r8d, eax
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop word cs:[rax + rax]
tzcnt r10, rdx
lea r11, [rdx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rax*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rdx, r11
jne 0x1400097b0
jmp 0x140009740
lea r10, [r8 - 1]
and r8, r10
je 0x140009899
tzcnt r10, r8
mov r11, rax
btc r11, r10
xor r11, qword [r13]
mov rbx, r11
and rbx, r9
or rbx, r15
tzcnt rbx, rbx
mov rbx, qword [rcx + rbx*8 + 0x800]
xor rbx, r9
and r11, rdx
or r11, 1
bsr r11, r11
mov r11, qword [rcx + r11*8 + 0x600]
xor r11, rdx
or r11, rbx
mov rbx, qword [rdi + 0x40]
or rbx, qword [rdi + 0x30]
test rbx, r11
jne 0x140009800
mov r11d, dword [rdi + r10*4 + 0x70]
shl r11d, 0x14
shl r10d, 0xe
or r10d, r11d
or r10d, 0x3000
xor r10d, dword [rsp + 0x58]
or r10d, 7
movsxd r10, r10d
movsxd r11, r12d
lea ebx, [r12 + 1]
mov dword [rsi + 0x6e0], ebx
mov qword [rsi + r11*8], r10
mov r12d, ebx
jmp 0x140009800
cmp dword [rsp + 0x7c], 0x40
je 0x14000991d
mov rax, qword [rsp + 0x70]
add rax, rdi
add rax, 0x118c
movzx edx, byte [r13 + 7]
lea rcx, [r14 - 0x38]
movsxd rax, dword [rax]
shl rcx, 6
lea r8, [0x140079b80]
add r8, rcx
test dword [r8 + rax*8 - 0x1c0], edx
jne 0x14000991d
lea rdx, [rax - 0x38]
lea r8, [0x140079d80]
add r8, rcx
mov rcx, qword [r8 + rdx*8]
shl rcx, 0x38
test qword [rsp + 0x80], rcx
jne 0x14000991d
mov ecx, r14d
shl ecx, 0xe
or ecx, 0xb03000
shl eax, 3
xor eax, ecx
or eax, 6
cdqe
movsxd rcx, r12d
lea edx, [r12 + 1]
mov dword [rsi + 0x6e0], edx
mov qword [rsi + rcx*8], rax
mov r12d, edx
mov eax, dword [rsp + 0x3c]
cmp eax, 0x40
je 0x14000a857
mov rax, qword [rsp + 0x70]
add rax, rdi
add rax, 0x1188
movzx edx, byte [r13 + 7]
mov rcx, r14
add rcx, 0xffffffffffffffc8
movsxd rax, dword [rax]
shl rcx, 6
lea r8, [0x140079b80]
add r8, rcx
test dword [r8 + rax*8 - 0x1c0], edx
jne 0x14000a857
lea rdx, [rax - 0x38]
lea r8, [0x140079d80]
add r8, rcx
mov rcx, qword [r8 + rdx*8]
shl rcx, 0x38
test qword [rsp + 0x80], rcx
jne 0x14000a857
mov ecx, 0xb03000
jmp 0x14000a833
mov rdx, qword [rdi]
mov rax, qword [rsp + 0x40]
and rdx, rax
movabs rcx, 0xff000000000000
and rcx, rdx
lea r14, [0x1400a91c0]
je 0x140009b26
lea rax, [rsi + 0x18]
mov qword [rsp + 0x48], rax
jmp 0x1400099dd
lea r8, [rcx - 1]
and rcx, r8
je 0x140009b26
tzcnt r9, rcx
lea rax, [0x140070de0]
mov r8, qword [rax + r9*8]
and r8, qword [rsp + 0x20]
mov r10, qword [r13]
not r10
lea rax, [0x140079f80]
and r10, qword [rax + r9*8]
or r10, r8
and r10, r15
je 0x1400099d0
mov r11d, r9d
shl r11d, 0xe
movsxd rbx, r12d
mov rax, qword [rsp + 0x48]
lea r15, [rax + rbx*8]
mov r12d, ebx
xor r14d, r14d
nop word cs:[rax + rax]
mov r8, r14
tzcnt r14, r10
lea r13, [r10 - 1]
mov edx, dword [rdi + r14*4 + 0x70]
mov ebp, dword [rdi + r9*4 + 0x70]
shl ebp, 0x14
or ebp, r11d
shl edx, 0xa
xor edx, ebp
lea ebp, [r14*8]
or edx, ebp
or edx, 1
movsxd rdx, edx
lea eax, [r12 + r8]
inc eax
mov dword [rsi + 0x6e0], eax
mov qword [r15 + r8*8 - 0x18], rdx
mov eax, dword [rdi + r14*4 + 0x70]
mov edx, dword [rdi + r9*4 + 0x70]
shl edx, 0x14
or edx, r11d
shl eax, 0xa
xor eax, edx
or eax, ebp
or eax, 2
cdqe
lea edx, [r12 + r8]
add edx, 2
mov dword [rsi + 0x6e0], edx
mov qword [r15 + r8*8 - 0x10], rax
mov eax, dword [rdi + r14*4 + 0x70]
mov edx, dword [rdi + r9*4 + 0x70]
shl edx, 0x14
or edx, r11d
shl eax, 0xa
xor eax, edx
or eax, ebp
or eax, 3
cdqe
lea edx, [r12 + r8]
add edx, 3
mov dword [rsi + 0x6e0], edx
mov qword [r15 + r8*8 - 8], rax
mov eax, dword [rdi + r14*4 + 0x70]
mov edx, dword [rdi + r9*4 + 0x70]
shl edx, 0x14
or edx, r11d
shl eax, 0xa
xor eax, edx
or eax, ebp
or eax, 4
lea r14, [r8 + 4]
cdqe
lea edx, [r12 + r8]
add edx, 4
mov dword [rsi + 0x6e0], edx
mov qword [r15 + r8*8], rax
and r10, r13
jne 0x140009a30
lea r12, [rbx + r8]
add r12, 4
mov r13, qword [rsp + 0x60]
lea r14, [0x1400a91c0]
mov r15, qword [rsp + 0x28]
jmp 0x1400099d0
mov rcx, qword [rdi + 0x10]
and rcx, qword [rsp + 0x40]
jne 0x140009b59
mov rcx, qword [rdi + 0x40]
mov rdx, qword [rdi + 0x20]
or rdx, rcx
and rdx, qword [rsp + 0x40]
jne 0x140009bdd
jmp 0x140009dfa
lea rax, [rcx - 1]
and rcx, rax
je 0x140009b31
tzcnt rdx, rcx
lea rax, [0x14006d7a0]
mov r8, qword [rax + rdx*8]
and r8, r15
je 0x140009b50
mov r9d, edx
shl r9d, 0xe
movsxd r12, r12d
lea r10d, [r12 + 1]
nop dword [rax]
tzcnt rax, r8
lea r11, [r8 - 1]
mov ebx, dword [rdi + rax*4 + 0x70]
mov ebp, dword [rdi + rdx*4 + 0x70]
shl ebp, 0x14
or ebp, r9d
shl ebx, 0xa
xor ebx, ebp
lea eax, [rax*8]
or eax, ebx
cdqe
mov dword [rsi + 0x6e0], r10d
mov qword [rsi + r12*8], rax
inc r12
lea eax, [r10 + 1]
mov r10d, eax
and r8, r11
jne 0x140009b80
jmp 0x140009b50
lea rax, [rdx - 1]
and rdx, rax
je 0x140009df6
tzcnt rcx, rdx
mov rax, rcx
shl rax, 4
lea r10, [0x14006cda0]
movsxd r8, dword [rax + r10 + 8]
lea r9, [0x14006cba0]
mov r9, qword [r9 + rcx*8]
and r9, qword [r13]
imul r9, qword [rax + r10]
shr r9, 0x37
add r9, r8
mov r8, qword [r14 + r9*8]
and r8, r15
je 0x140009bd0
mov r9d, ecx
shl r9d, 0xe
movsxd r12, r12d
lea r10d, [r12 + 1]
nop dword [rax + rax]
tzcnt rax, r8
lea r11, [r8 - 1]
mov ebx, dword [rdi + rax*4 + 0x70]
mov ebp, dword [rdi + rcx*4 + 0x70]
shl ebp, 0x14
or ebp, r9d
shl ebx, 0xa
xor ebx, ebp
lea eax, [rax*8]
or eax, ebx
cdqe
mov dword [rsi + 0x6e0], r10d
mov qword [rsi + r12*8], rax
inc r12
lea eax, [r10 + 1]
mov r10d, eax
and r8, r11
jne 0x140009c30
jmp 0x140009bd0
mov rax, qword [rdi]
movabs rcx, 0xff000000000000
mov r9, qword [rsp + 0x40]
and r9, rax
and r9, rcx
je 0x140009f69
lea rax, [rsi + 0x18]
mov qword [rsp + 0x50], rax
jmp 0x140009cad
lea rax, [r9 - 1]
and r9, rax
je 0x140009f66
tzcnt r15, r9
lea rax, [0x140070de0]
mov rax, qword [rax + r15*8]
and rax, qword [rsp + 0x48]
mov rdx, qword [r13]
not rdx
lea r8, [0x140079f80]
and rdx, qword [r8 + r15*8]
or rdx, rax
je 0x140009ca0
mov eax, r15d
shl eax, 0xe
movsxd r12, r12d
mov rcx, qword [rsp + 0x50]
lea r11, [rcx + r12*8]
mov r10d, r12d
xor ecx, ecx
mov r13, rcx
tzcnt rbp, rdx
lea r14, [rdx - 1]
mov r8d, dword [rdi + rbp*4 + 0x70]
mov ecx, dword [rdi + r15*4 + 0x70]
shl ecx, 0x14
or ecx, eax
shl r8d, 0xa
xor r8d, ecx
lea ecx, [rbp*8]
or r8d, ecx
or r8d, 1
movsxd r8, r8d
lea ebx, [r10 + r13]
inc ebx
mov dword [rsi + 0x6e0], ebx
mov qword [r11 + r13*8 - 0x18], r8
mov r8d, dword [rdi + rbp*4 + 0x70]
mov ebx, dword [rdi + r15*4 + 0x70]
shl ebx, 0x14
or ebx, eax
shl r8d, 0xa
xor r8d, ebx
or r8d, ecx
or r8d, 2
movsxd r8, r8d
lea ebx, [r10 + r13]
add ebx, 2
mov dword [rsi + 0x6e0], ebx
mov qword [r11 + r13*8 - 0x10], r8
mov r8d, dword [rdi + rbp*4 + 0x70]
mov ebx, dword [rdi + r15*4 + 0x70]
shl ebx, 0x14
or ebx, eax
shl r8d, 0xa
xor r8d, ebx
or r8d, ecx
or r8d, 3
movsxd r8, r8d
lea ebx, [r10 + r13]
add ebx, 3
mov dword [rsi + 0x6e0], ebx
mov qword [r11 + r13*8 - 8], r8
mov r8d, dword [rdi + rbp*4 + 0x70]
mov ebx, dword [rdi + r15*4 + 0x70]
shl ebx, 0x14
or ebx, eax
shl r8d, 0xa
xor r8d, ebx
or r8d, ecx
or r8d, 4
lea rcx, [r13 + 4]
movsxd r8, r8d
lea ebx, [r10 + r13]
add ebx, 4
mov dword [rsi + 0x6e0], ebx
mov qword [r11 + r13*8], r8
and rdx, r14
jne 0x140009cf0
add r12, r13
add r12, 4
mov r13, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x20]
movabs rcx, 0xff000000000000
jmp 0x140009ca0
mov rcx, qword [rdi + 0x40]
or rcx, qword [rdi + 0x30]
and rcx, qword [rsp + 0x40]
jne 0x140009ecd
mov rax, qword [rsp + 0x58]
mov ecx, eax
xor cl, 8
mov eax, 1
shl rax, cl
cmp qword [rsp + 0x20], rax
mov r11, qword [rsp + 0x30]
jne 0x14000a857
not r11
lea rax, [0x140070de0]
mov rcx, qword [rsp + 0x88]
and r11, qword [rax + rcx*8 + 0x208]
and r11, qword [rdi]
je 0x14000a857
mov rax, qword [rsp + 0x58]
lea eax, [rax*8]
movsxd rcx, r12d
lea rdx, [rsi + rcx*8]
inc ecx
nop word cs:[rax + rax]
tzcnt r8, r11
lea r9, [r11 - 1]
mov r10d, dword [rdi + r8*4 + 0x70]
shl r10d, 0x14
shl r8d, 0xe
or r8d, r10d
or r8d, 0x3000
xor r8d, eax
or r8d, 7
movsxd r8, r8d
mov dword [rsi + 0x6e0], ecx
mov qword [rdx], r8
add rdx, 8
inc ecx
and r11, r9
jne 0x140009e70
jmp 0x14000a857
lea rax, [rcx - 1]
and rcx, rax
je 0x140009e09
tzcnt rdx, rcx
mov rax, rdx
shl rax, 4
lea r10, [0x14006d3a0]
movsxd r8, dword [rax + r10 + 8]
lea r9, [0x14006d1a0]
mov r9, qword [r9 + rdx*8]
and r9, qword [r13]
imul r9, qword [rax + r10]
shr r9, 0x34
add r9, r8
mov r8, qword [r14 + r9*8]
and r8, r15
je 0x140009ec0
mov r9d, edx
shl r9d, 0xe
movsxd r12, r12d
lea r10d, [r12 + 1]
nop dword [rax + rax]
tzcnt rax, r8
lea r11, [r8 - 1]
mov ebx, dword [rdi + rax*4 + 0x70]
mov ebp, dword [rdi + rdx*4 + 0x70]
shl ebp, 0x14
or ebp, r9d
shl ebx, 0xa
xor ebx, ebp
lea eax, [rax*8]
or eax, ebx
cdqe
mov dword [rsi + 0x6e0], r10d
mov qword [rsi + r12*8], rax
inc r12
lea eax, [r10 + 1]
mov r10d, eax
and r8, r11
jne 0x140009f20
jmp 0x140009ec0
mov rax, qword [rdi]
mov rdx, qword [rsp + 0x30]
movabs r14, 0xff00ffffffffffff
and rdx, r14
and rdx, rax
lea r15, [0x1400a91c0]
je 0x14000a090
lea rax, [0x14006fbe0]
lea r9, [0x140079f80]
jmp 0x140009fad
lea rcx, [rdx - 1]
and rdx, rcx
je 0x14000a079
tzcnt r10, rdx
mov r11, qword [r13]
mov rcx, qword [rax + r10*8 + 0xc00]
mov r8, rcx
and r8, r11
movabs rbx, 0x8000000000000000
or r8, rbx
tzcnt r8, r8
xor rcx, qword [rax + r8*8 + 0xc00]
mov r8, qword [rax + r10*8 + 0x200]
mov rbx, r8
and rbx, r11
or rbx, 1
bsr rbx, rbx
xor r8, qword [rax + rbx*8 + 0x200]
or r8, rcx
not r11
and r11, qword [r9 + r10*8]
and r11, r8
and r11, qword [rsp + 0x30]
je 0x140009fa0
mov ecx, r10d
shl ecx, 0xe
movsxd r12, r12d
lea r14d, [r12 + 1]
nop
tzcnt r8, r11
lea rbx, [r11 - 1]
mov ebp, dword [rdi + r8*4 + 0x70]
mov r15d, dword [rdi + r10*4 + 0x70]
shl r15d, 0x14
or r15d, ecx
shl ebp, 0xa
xor ebp, r15d
lea r8d, [r8*8]
or r8d, ebp
movsxd r8, r8d
mov dword [rsi + 0x6e0], r14d
mov qword [rsi + r12*8], r8
inc r12
lea r8d, [r14 + 1]
mov r14d, r8d
and r11, rbx
jne 0x14000a020
lea r15, [0x1400a91c0]
mov rbp, qword [rsp + 0x20]
jmp 0x140009fa0
mov rax, qword [rdi]
movabs rcx, 0xff000000000000
movabs r14, 0xff00ffffffffffff
and r14, rbp
and r14, rax
jne 0x14000a0a9
jmp 0x14000a125
lea rax, [r14 - 1]
and r14, rax
je 0x14000a118
tzcnt rax, r14
lea rcx, [0x140070de0]
mov rcx, qword [rcx + rax*8]
and rcx, qword [rsp + 0x48]
and rcx, rbp
je 0x14000a0a0
mov edx, eax
shl edx, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
tzcnt r8, rcx
lea r10, [rcx - 1]
mov r11d, dword [rdi + r8*4 + 0x70]
mov ebx, dword [rdi + rax*4 + 0x70]
shl ebx, 0x14
or ebx, edx
shl r11d, 0xa
xor r11d, ebx
lea r8d, [r8*8]
or r8d, r11d
movsxd r8, r8d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r8
inc r12
lea r8d, [r9 + 1]
mov r9d, r8d
and rcx, r10
jne 0x14000a0d0
jmp 0x14000a0a0
mov rax, qword [rdi]
movabs rcx, 0xff000000000000
and rcx, rbp
and rcx, rax
mov r14, qword [rsp + 0x68]
je 0x14000a289
lea rax, [rsi + 0x18]
mov qword [rsp + 0x50], rax
jmp 0x14000a15d
lea rax, [rcx - 1]
and rcx, rax
je 0x14000a289
tzcnt rdx, rcx
lea rax, [0x140070de0]
mov r9, qword [rax + rdx*8]
and r9, qword [rsp + 0x48]
and r9, rbp
je 0x14000a150
mov r8, rcx
mov eax, edx
shl eax, 0xe
movsxd r10, r12d
mov rcx, qword [rsp + 0x50]
lea r11, [rcx + r10*8]
mov r15d, r10d
xor ecx, ecx
mov r12, rcx
tzcnt r13, r9
lea r14, [r9 - 1]
mov ebx, dword [rdi + r13*4 + 0x70]
mov ecx, dword [rdi + rdx*4 + 0x70]
shl ecx, 0x14
or ecx, eax
shl ebx, 0xa
xor ebx, ecx
lea ecx, [r13*8]
or ebx, ecx
or ebx, 1
movsxd rbx, ebx
lea ebp, [r15 + r12]
inc ebp
mov dword [rsi + 0x6e0], ebp
mov qword [r11 + r12*8 - 0x18], rbx
mov ebx, dword [rdi + r13*4 + 0x70]
mov ebp, dword [rdi + rdx*4 + 0x70]
shl ebp, 0x14
or ebp, eax
shl ebx, 0xa
xor ebx, ebp
or ebx, ecx
or ebx, 2
movsxd rbx, ebx
lea ebp, [r15 + r12]
add ebp, 2
mov dword [rsi + 0x6e0], ebp
mov qword [r11 + r12*8 - 0x10], rbx
mov ebx, dword [rdi + r13*4 + 0x70]
mov ebp, dword [rdi + rdx*4 + 0x70]
shl ebp, 0x14
or ebp, eax
shl ebx, 0xa
xor ebx, ebp
or ebx, ecx
or ebx, 3
movsxd rbx, ebx
lea ebp, [r15 + r12]
add ebp, 3
mov dword [rsi + 0x6e0], ebp
mov qword [r11 + r12*8 - 8], rbx
mov ebx, dword [rdi + r13*4 + 0x70]
mov ebp, dword [rdi + rdx*4 + 0x70]
shl ebp, 0x14
or ebp, eax
shl ebx, 0xa
xor ebx, ebp
or ebx, ecx
or ebx, 4
lea rcx, [r12 + 4]
movsxd rbx, ebx
lea ebp, [r15 + r12]
add ebp, 4
mov dword [rsi + 0x6e0], ebp
mov qword [r11 + r12*8], rbx
and r9, r14
jne 0x14000a190
add r12, r10
add r12, 4
mov r14, qword [rsp + 0x68]
mov r13, qword [rsp + 0x60]
lea r15, [0x1400a91c0]
mov rbp, qword [rsp + 0x20]
mov rcx, r8
jmp 0x14000a150
mov rax, qword [rdi + 0x10]
and rax, qword [rsp + 0x40]
jne 0x14000a2c9
mov rcx, qword [rdi + 0x40]
mov rdx, qword [rdi + 0x20]
or rdx, rcx
mov rax, rdx
and rax, qword [rsp + 0x40]
jne 0x14000a34d
jmp 0x14000a3f6
lea rcx, [rax - 1]
and rax, rcx
je 0x14000a294
tzcnt rcx, rax
lea rdx, [0x14006d7a0]
mov rdx, qword [rdx + rcx*8]
and rdx, qword [rsp + 0x28]
je 0x14000a2c0
mov r8d, ecx
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop
tzcnt r10, rdx
lea r11, [rdx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rcx*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rdx, r11
jne 0x14000a2f0
mov rbp, qword [rsp + 0x20]
jmp 0x14000a2c0
lea rcx, [rax - 1]
and rax, rcx
je 0x14000a3eb
tzcnt rcx, rax
mov rdx, rcx
shl rdx, 4
lea r10, [0x14006cda0]
movsxd r8, dword [rdx + r10 + 8]
lea r9, [0x14006cba0]
mov r9, qword [r9 + rcx*8]
and r9, qword [r13]
imul r9, qword [rdx + r10]
shr r9, 0x37
add r9, r8
mov rdx, qword [r15 + r9*8]
and rdx, qword [rsp + 0x28]
je 0x14000a340
mov r8d, ecx
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop word [rax + rax]
tzcnt r10, rdx
lea r11, [rdx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rcx*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rdx, r11
jne 0x14000a3a0
mov rbp, qword [rsp + 0x20]
jmp 0x14000a340
mov rcx, qword [rdi + 0x40]
mov rdx, qword [rdi + 0x20]
or rdx, rcx
and rdx, rbp
jne 0x14000a40d
jmp 0x14000a4af
lea rax, [rdx - 1]
and rdx, rax
je 0x14000a4ab
tzcnt rax, rdx
mov rcx, rax
shl rcx, 4
lea r8, [0x14006cba0]
mov r8, qword [r8 + rax*8]
and r8, qword [r13]
lea r10, [0x14006cda0]
movsxd r9, dword [rcx + r10 + 8]
imul r8, qword [rcx + r10]
shr r8, 0x37
add r8, r9
mov rcx, qword [r15 + r8*8]
and rcx, qword [rsp + 0x28]
and rcx, rbp
je 0x14000a400
mov r8d, eax
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop dword [rax]
tzcnt r10, rcx
lea r11, [rcx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rax*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rcx, r11
jne 0x14000a460
mov rbp, qword [rsp + 0x20]
jmp 0x14000a400
mov rcx, qword [rdi + 0x40]
or rcx, qword [rdi + 0x30]
and qword [rsp + 0x40], rcx
je 0x14000a584
mov rcx, qword [rsp + 0x40]
jmp 0x14000a4e0
mov rcx, rbp
lea rax, [rbp - 1]
and rcx, rax
je 0x14000a577
mov rbp, rcx
tzcnt rax, rcx
mov rcx, rax
shl rcx, 4
lea r9, [0x14006d3a0]
movsxd rdx, dword [rcx + r9 + 8]
lea r8, [0x14006d1a0]
mov r8, qword [r8 + rax*8]
and r8, qword [r13]
imul r8, qword [rcx + r9]
shr r8, 0x34
add r8, rdx
mov rcx, qword [r15 + r8*8]
and rcx, qword [rsp + 0x28]
je 0x14000a4d0
mov edx, eax
shl edx, 0xe
movsxd r12, r12d
lea r8d, [r12 + 1]
nop
tzcnt r9, rcx
lea r10, [rcx - 1]
mov r11d, dword [rdi + r9*4 + 0x70]
mov ebx, dword [rdi + rax*4 + 0x70]
shl ebx, 0x14
or ebx, edx
shl r11d, 0xa
xor r11d, ebx
lea r9d, [r9*8]
or r9d, r11d
movsxd r9, r9d
mov dword [rsi + 0x6e0], r8d
mov qword [rsi + r12*8], r9
inc r12
inc r8d
and rcx, r10
jne 0x14000a530
jmp 0x14000a4d0
mov rcx, qword [rdi + 0x40]
or rcx, qword [rdi + 0x30]
mov rbp, qword [rsp + 0x20]
and rcx, qword [rsp + 0x30]
jne 0x14000a62d
mov rcx, qword [rsp + 0x30]
not rcx
mov rdx, qword [rsp + 0x90]
and rdx, rbp
not rbp
xor eax, eax
neg rdx
sbb rax, rax
or rax, rbp
and rax, rcx
lea rcx, [0x140070de0]
mov rdx, qword [rsp + 0x88]
and rax, qword [rcx + rdx*8 + 0x208]
and rax, qword [rdi]
je 0x14000a769
xor dl, 8
mov rcx, rdx
mov edx, 1
shl rdx, cl
lea rcx, [0x14006fbe0]
mov r8, qword [rcx + r14*8 + 0x600]
mov r9, qword [rcx + r14*8 + 0x800]
mov r10, qword [rsp + 0x58]
shl r10d, 3
mov qword [rsp + 0x58], r10
movabs r15, 0x8000000000000000
jmp 0x14000a6dd
lea rax, [rcx - 1]
and rcx, rax
je 0x14000a58f
tzcnt rax, rcx
mov rdx, rax
shl rdx, 4
lea r8, [0x14006d1a0]
mov r8, qword [r8 + rax*8]
and r8, qword [r13]
lea r10, [0x14006d3a0]
movsxd r9, dword [rdx + r10 + 8]
imul r8, qword [rdx + r10]
shr r8, 0x34
add r8, r9
mov rdx, qword [r15 + r8*8]
and rdx, qword [rsp + 0x28]
and rdx, qword [rsp + 0x30]
je 0x14000a620
mov r8d, eax
shl r8d, 0xe
movsxd r12, r12d
lea r9d, [r12 + 1]
nop
tzcnt r10, rdx
lea r11, [rdx - 1]
mov ebx, dword [rdi + r10*4 + 0x70]
mov ebp, dword [rdi + rax*4 + 0x70]
shl ebp, 0x14
or ebp, r8d
shl ebx, 0xa
xor ebx, ebp
lea r10d, [r10*8]
or r10d, ebx
movsxd r10, r10d
mov dword [rsi + 0x6e0], r9d
mov qword [rsi + r12*8], r10
inc r12
inc r9d
and rdx, r11
jne 0x14000a680
mov rbp, qword [rsp + 0x20]
jmp 0x14000a620
lea r10, [rax - 1]
and rax, r10
je 0x14000a769
tzcnt r10, rax
mov r11, rdx
btc r11, r10
xor r11, qword [r13]
mov rbx, r11
and rbx, r9
or rbx, r15
tzcnt rbx, rbx
mov rbx, qword [rcx + rbx*8 + 0x800]
xor rbx, r9
and r11, r8
or r11, 1
bsr r11, r11
mov r11, qword [rcx + r11*8 + 0x600]
xor r11, r8
or r11, rbx
mov rbx, qword [rdi + 0x48]
or rbx, qword [rdi + 0x38]
test rbx, r11
jne 0x14000a6d0
mov r11d, dword [rdi + r10*4 + 0x70]
shl r11d, 0x14
shl r10d, 0xe
or r10d, r11d
or r10d, 0x3000
xor r10d, dword [rsp + 0x58]
or r10d, 7
movsxd r10, r10d
movsxd r11, r12d
lea ebx, [r12 + 1]
mov dword [rsi + 0x6e0], ebx
mov qword [rsi + r11*8], r10
mov r12d, ebx
jmp 0x14000a6d0
cmp dword [rsp + 0x7c], 0x40
je 0x14000a7df
mov rax, qword [rsp + 0x70]
add rax, rdi
add rax, 0x1184
movsxd rax, dword [rax]
mov rcx, r14
shl rcx, 6
lea rdx, [0x140079b80]
add rdx, rcx
mov rdx, qword [rdx + rax*8]
test qword [r13], rdx
jne 0x14000a7df
lea rdx, [0x140079d80]
add rdx, rcx
mov rcx, qword [rsp + 0x80]
test qword [rdx + rax*8], rcx
jne 0x14000a7df
mov ecx, r14d
shl ecx, 0xe
or ecx, 0xa03000
shl eax, 3
xor eax, ecx
or eax, 6
cdqe
movsxd rcx, r12d
lea edx, [r12 + 1]
mov dword [rsi + 0x6e0], edx
mov qword [rsi + rcx*8], rax
mov r12d, edx
mov eax, dword [rsp + 0x3c]
cmp eax, 0x40
je 0x14000a857
mov rax, qword [rsp + 0x70]
add rax, rdi
add rax, 0x1180
mov eax, dword [rax]
movsxd rcx, eax
mov rdx, r14
shl rdx, 6
lea r8, [0x140079b80]
add r8, rdx
mov r8, qword [r8 + rcx*8]
test qword [r13], r8
jne 0x14000a857
lea r8, [0x140079d80]
add r8, rdx
mov rdx, qword [rsp + 0x80]
test qword [r8 + rcx*8], rdx
jne 0x14000a857
mov ecx, 0xa03000
shl r14d, 0xe
or r14d, ecx
shl eax, 3
xor eax, r14d
or eax, 5
cdqe
lea ecx, [r12 + 1]
mov dword [rsi + 0x6e0], ecx
movsxd rcx, r12d
mov qword [rsi + rcx*8], rax
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret