Function at 0x1400880b0
Capabilities:
Encode data using xor
Parse pe header

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x9f48
call fcn.140060680
sub rsp, rax
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x9c28], rdx
mov dword [rbp + 0x9d34], ecx
call fcn.140054a60
lea rcx, [rbp - 0x50]
xor edx, edx
call fcn.14008d980
movzx eax, byte [rbp - 0x50]
mov r8d, eax
shr r8d, 1
test al, 1
lea rdx, [rbp - 0x4f]
cmovne rdx, qword [rbp - 0x40]
cmovne r8, qword [rbp - 0x48]
mov rbx, qword [0x1400daca0]
mov rcx, rbx
call fcn.140085700
mov rax, qword [rbx]
mov rdx, qword [rax - 0x18]
add rdx, rbx
lea rsi, [rbp + 0x9d40]
mov rcx, rsi
call fcn.140010700
mov rdx, qword [0x1400c8228]
mov rcx, rsi
call fcn.140040a60
mov r8, qword [rax]
mov rcx, rax
mov dl, 0xa
call qword [r8 + 0x38]
mov edi, eax
mov rcx, rsi
call fcn.1400401c0
mov rcx, rbx
mov edx, edi
call fcn.1400157b0
mov rcx, rbx
call fcn.140011b00
test byte [rbp - 0x50], 1
je 0x140088176
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9d40], xmm0
mov qword [rbp + 0x9d50], 0
mov rax, qword [rbp + 0x9c28]
mov rdx, qword [rax]
lea rcx, [0x1400f43e8]
call fcn.140008fe0
lea rdx, [0x1400d834a]
lea rcx, [rbp + 0x9d40]
call fcn.140008fe0
lea rcx, [0x1400f43d0]
lea rdx, [0x1400da1f0]
call fcn.140008fe0
lea rcx, [rbp - 0x50]
mov edx, 0x9c40
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__getcwd]
test rax, rax
je 0x1400881ec
lea rcx, [0x1400f43d0]
mov rdx, rax
call fcn.140008fe0
lea rcx, [0x1400f43b8]
lea rdx, [0x1400f43e8]
call fcn.140009190
movzx eax, byte [0x1400f43b8]
mov ecx, eax
shr ecx, 1
test al, 1
lea rbx, [0x1400f43b9]
mov rax, qword [0x1400f43c8]
cmove rax, rbx
cmovne rcx, qword [0x1400f43c0]
nop word cs:[rax + rax]
test rcx, rcx
je 0x140088271
mov rdx, rcx
movzx r8d, byte [rax + rcx - 1]
cmp r8d, 0x5c
je 0x14008824e
lea rcx, [rdx - 1]
cmp r8d, 0x2f
jne 0x140088230
add rdx, rax
dec rdx
sub rdx, rax
cmp rdx, 0xffffffffffffffff
je 0x140088271
inc rdx
lea rcx, [0x1400f43b8]
xor r8d, r8d
call fcn.1400095d0
jmp 0x1400882be
lea rdx, [0x1400d834c]
lea rcx, [rbp + 0x9c30]
lea r8, [rbp + 0x9d40]
call fcn.14000c010
test byte [0x1400f43b8], 1
je 0x1400882a0
mov rcx, qword [0x1400f43c8]
call fcn.1400061e0
mov rax, qword [rbp + 0x9c40]
mov qword [0x1400f43c8], rax
vmovups xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [0x1400f43b8], xmm0
lea rdx, [0x1400d834c]
lea rcx, [rbp + 0x9c30]
lea r8, [rbp + 0x9d40]
call fcn.14000c010
movzx r8d, byte [0x1400f43b8]
test r8b, 1
je 0x1400882ed
mov rbx, qword [0x1400f43c8]
movzx r13d, byte [rbp + 0x9c30]
mov edi, r13d
shr edi, 1
test r13b, 1
mov rcx, qword [rbp + 0x9c40]
lea r14, [rbp + 0x9c31]
cmovne r14, rcx
cmovne rdi, qword [rbp + 0x9c38]
test rdi, rdi
je 0x14008832c
test r8b, 1
je 0x14008833d
mov r8, qword [0x1400f43c0]
jmp 0x140088340
mov bl, 1
test r13b, 1
jne 0x1400883b9
jmp 0x1400883be
shr r8d, 1
lea rsi, [rbx + r8]
cmp r8, rdi
jge 0x14008834e
mov r15, rsi
jmp 0x1400883a5
mov qword [rbp + 0x9ec0], rcx
movsx r12d, byte [r14]
mov r15, rbx
nop dword [rax]
sub r8, rdi
inc r8
je 0x14008839b
mov rcx, r15
mov edx, r12d
call sub.api_ms_win_crt_private_l1_1_0.dll_memchr
test rax, rax
je 0x14008839b
mov r15, rax
mov rcx, rax
mov rdx, r14
mov r8, rdi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
test eax, eax
je 0x14008839e
inc r15
mov r8, rsi
sub r8, r15
cmp r8, rdi
jge 0x140088360
mov r15, rsi
mov rcx, qword [rbp + 0x9ec0]
cmp r15, rsi
setne al
cmp r15, rbx
sete bl
and bl, al
test r13b, 1
je 0x1400883be
call fcn.1400061e0
test bl, bl
jne 0x14008cef5
test byte [rbp + 0x9d40], 1
je 0x1400883db
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
mov byte [rbp + 0x9d40], 0x1c
movabs rax, 0x6f4c5f6775626544
mov qword [rbp + 0x9d41], rax
movabs rax, 0x656c69465f676f4c
mov qword [rbp + 0x9d47], rax
mov byte [rbp + 0x9d4f], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9d40]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x1400884e0
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9d50]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9d40], xmm0
mov qword [rbp + 0x9d50], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x1400884ca
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
lea r14, [rsi + 0x38]
lea r15, [rbp - 0x38]
lea rdi, [rbp - 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 0xc
mov dword [rbp - 0x1f], 0x69727473
mov word [rbp - 0x1b], 0x676e
mov byte [rbp - 0x19], 0
mov qword [rbp - 8], 0
lea rax, [0x1400bb700]
mov qword [rbp + 8], rax
lea rdx, [0x1400da1f0]
mov rcx, r15
vzeroupper
call fcn.140008fe0
lea r12, [rbp - 0x50]
mov rcx, r12
mov rdx, rax
call fcn.140009190
mov rcx, r14
mov rdx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [rbp - 8]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [rbp + 8]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008cf44
test byte [rbp - 0x38], 1
jne 0x14008cf57
test byte [rbp - 0x50], 1
jne 0x14008cf6a
test byte [rbp + 0x9d40], 1
je 0x1400885ca
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 0xe
mov dword [rbp + 0x9c31], 0x65726854
mov dword [rbp + 0x9c34], 0x73646165
mov byte [rbp + 0x9c38], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x1400886c1
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x1400886ab
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0x40000000001
mov qword [rbp - 8], rax
lea rax, [0x1400bb7b0]
mov qword [rbp + 8], rax
lea rcx, [rbp + 0x9d40]
vmovsd xmm1, qword [0x1400d40c0]
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x14008871d
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea rdi, [rsi + 0x38]
lea r14, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x140088767
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, r14
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008cf85
test byte [rbp - 0x38], 1
jne 0x14008cf98
test byte [rbp - 0x50], 1
jne 0x14008cfab
test byte [rbp + 0x9c30], 1
je 0x1400887f0
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 8
mov dword [rbp + 0x9c31], 0x68736148
mov byte [rbp + 0x9c35], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x1400888dd
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x1400888c7
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0x200000000000001
mov qword [rbp - 8], rax
lea rax, [0x1400bb850]
mov qword [rbp + 8], rax
lea rcx, [rbp + 0x9d40]
vmovsd xmm1, qword [0x1400d40c8]
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x140088939
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x140088983
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008cfc6
test byte [rbp - 0x38], 1
jne 0x14008cfd9
test byte [rbp - 0x50], 1
jne 0x14008cfec
test byte [rbp + 0x9c30], 1
je 0x140088a0c
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9d40], 0x14
movabs rax, 0x61485f7261656c43
mov qword [rbp + 0x9d41], rax
mov word [rbp + 0x9d49], 0x6873
mov byte [rbp + 0x9d4b], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9d40]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140088b09
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9d50]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9d40], xmm0
mov qword [rbp + 0x9d50], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140088af3
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
lea rcx, [rsi + 0x38]
lea rdi, [rbp - 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 0xc
mov dword [rbp - 0x1f], 0x74747562
mov word [rbp - 0x1b], 0x6e6f
mov byte [rbp - 0x19], 0
mov qword [rbp - 8], 0
lea rax, [0x1400bb8f0]
mov qword [rbp + 8], rax
lea rdx, [rbp - 0x50]
vzeroupper
call fcn.140009190
lea rcx, [rsi + 0x50]
lea rdx, [rbp - 0x38]
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [rbp - 8]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [rbp + 8]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d007
test byte [rbp - 0x38], 1
jne 0x14008d01a
test byte [rbp - 0x50], 1
jne 0x14008d02d
test byte [rbp + 0x9d40], 1
je 0x140088bd0
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
mov byte [rbp + 0x9d40], 0xc
mov dword [rbp + 0x9d41], 0x646e6f50
mov word [rbp + 0x9d45], 0x7265
mov byte [rbp + 0x9d47], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9d40]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140088cc6
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9d50]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9d40], xmm0
mov qword [rbp + 0x9d50], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140088cb0
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 0xa
mov dword [rbp - 0x1f], 0x63656863
mov word [rbp - 0x1b], 0x6b
mov qword [rbp - 8], 0
mov qword [rbp + 8], 0
lea rdx, str.false
mov rcx, r15
vzeroupper
call fcn.140008fe0
lea r13, [rbp - 0x50]
mov rcx, r13
mov rdx, rax
call fcn.140009190
mov rcx, r12
mov rdx, r13
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [rbp - 8]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [rbp + 8]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d048
test byte [rbp - 0x38], 1
jne 0x14008d05b
test byte [rbp - 0x50], 1
jne 0x14008d06e
test byte [rbp + 0x9d40], 1
je 0x140088da5
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 0xe
mov dword [rbp + 0x9c31], 0x746c754d
mov dword [rbp + 0x9c34], 0x56506974
mov byte [rbp + 0x9c38], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140088e9c
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140088e86
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0x1f400000001
mov qword [rbp - 8], rax
mov qword [rbp + 8], 0
lea rcx, [rbp + 0x9d40]
vmovsd xmm1, qword [0x1400d40c0]
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x140088ef5
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x140088f3f
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d089
test byte [rbp - 0x38], 1
jne 0x14008d09c
test byte [rbp - 0x50], 1
jne 0x14008d0af
test byte [rbp + 0x9c30], 1
je 0x140088fc8
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 0x1a
movabs rax, 0x65764f5f65766f4d
mov qword [rbp + 0x9c31], rax
movabs rax, 0x646165687265764f
mov qword [rbp + 0x9c36], rax
mov byte [rbp + 0x9c3e], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x1400890cd
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x1400890b7
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0x138800000000
mov qword [rbp - 8], rax
mov qword [rbp + 8], 0
lea rcx, [rbp + 0x9d40]
vmovsd xmm1, qword [0x1400d40d0]
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x140089126
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x140089170
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d0ca
test byte [rbp - 0x38], 1
jne 0x14008d0dd
test byte [rbp - 0x50], 1
jne 0x14008d0f0
test byte [rbp + 0x9c30], 1
je 0x1400891f9
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 0x14
movabs rax, 0x766f4d5f776f6c53
mov qword [rbp + 0x9c31], rax
mov word [rbp + 0x9c39], 0x7265
mov byte [rbp + 0x9c3b], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x1400892f6
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x1400892e0
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0x3e80000000a
mov qword [rbp - 8], rax
mov qword [rbp + 8], 0
lea rcx, [rbp + 0x9d40]
vmovsd xmm1, qword [0x1400d40d8]
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x14008934f
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x140089399
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d10b
test byte [rbp - 0x38], 1
jne 0x14008d11e
test byte [rbp - 0x50], 1
jne 0x14008d131
test byte [rbp + 0x9c30], 1
je 0x140089422
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 0x12
movabs rax, 0x6d69747365646f6e
mov qword [rbp + 0x9c31], rax
mov word [rbp + 0x9c39], 0x65
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140089518
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140089502
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0x271000000000
mov qword [rbp - 8], rax
mov qword [rbp + 8], 0
lea rcx, [rbp + 0x9d40]
vxorps xmm1, xmm1, xmm1
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x14008956d
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x1400895b7
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d14c
test byte [rbp - 0x38], 1
jne 0x14008d15f
test byte [rbp - 0x50], 1
jne 0x14008d172
test byte [rbp + 0x9c30], 1
je 0x140089640
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 0x22
vmovups xmm0, xmmword [str.Mate_Threat_Depth]
vmovups xmmword [rbp + 0x9c31], xmm0
mov word [rbp + 0x9c41], 0x68
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140089735
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x14008971f
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0xa00000000
mov qword [rbp - 8], rax
lea rax, [0x1400bb900]
mov qword [rbp + 8], rax
lea rcx, [rbp + 0x9d40]
vmovsd xmm1, qword [0x1400d40c0]
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x140089791
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x1400897db
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d18d
test byte [rbp - 0x38], 1
jne 0x14008d1a0
test byte [rbp - 0x50], 1
jne 0x14008d1b3
test byte [rbp + 0x9c30], 1
je 0x140089864
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9d40], 0x1e
movabs rax, 0x6974697465706552
mov qword [rbp + 0x9d41], rax
movabs rax, 0x656c75525f6e6f69
mov qword [rbp + 0x9d48], rax
mov byte [rbp + 0x9d50], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9d40]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140089969
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9d50]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9d40], xmm0
mov qword [rbp + 0x9d50], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140089953
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 0xa
mov dword [rbp - 0x1f], 0x626d6f63
mov word [rbp - 0x1b], 0x6f
mov qword [rbp - 8], 0
lea rax, [0x1400bb9a0]
mov qword [rbp + 8], rax
lea rdx, str.AsianRule_var_AsianRule_var_ChineseRule
mov rcx, r13
vzeroupper
call fcn.140008fe0
lea rdx, str.AsianRule
mov rcx, r15
call fcn.140008fe0
mov rcx, r12
mov rdx, r13
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [rbp - 8]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [rbp + 8]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d1ce
test byte [rbp - 0x38], 1
jne 0x14008d1e1
test byte [rbp - 0x50], 1
jne 0x14008d1f4
test byte [rbp + 0x9d40], 1
je 0x140089a4b
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
mov byte [rbp + 0x9c30], 0x1a
movabs rax, 0x6576697463616e49
mov qword [rbp + 0x9c31], rax
movabs rax, 0x776172445f657669
mov qword [rbp + 0x9c36], rax
mov byte [rbp + 0x9c3e], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9c30]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140089b50
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9c40]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9c30]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9c30], xmm0
mov qword [rbp + 0x9c40], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140089b3a
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 8
mov dword [rbp - 0x1f], 0x6e697073
mov byte [rbp - 0x1b], 0
movabs rax, 0x1f400000000
mov qword [rbp - 8], rax
lea rax, [0x1400bbc10]
mov qword [rbp + 8], rax
lea rcx, [rbp + 0x9d40]
vmovsd xmm1, qword [0x1400d40e0]
vzeroupper
call fcn.14000df60
test byte [rbp - 0x38], 1
je 0x140089bac
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
lea r12, [rsi + 0x38]
lea rdi, [rbp - 0x20]
mov rax, qword [rbp + 0x9d50]
mov qword [r15 + 0x10], rax
vmovups xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [r15], xmm0
mov word [rbp + 0x9d40], 0
lea rcx, [rbp - 0x50]
mov rdx, r15
call fcn.140009190
test byte [rbp + 0x9d40], 1
je 0x140089bf6
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
lea rdx, [rbp - 0x50]
mov rcx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [r14 + 0x18]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [r14 + 0x28]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d20f
test byte [rbp - 0x38], 1
jne 0x14008d222
test byte [rbp - 0x50], 1
jne 0x14008d235
test byte [rbp + 0x9c30], 1
je 0x140089c7f
mov rcx, qword [rbp + 0x9c40]
call fcn.1400061e0
mov byte [rbp + 0x9d40], 0x16
movabs rax, 0x776f68535f494355
mov qword [rbp + 0x9d41], rax
mov dword [rbp + 0x9d48], 0x4c445777
mov byte [rbp + 0x9d4c], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9d40]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140089d7d
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9d50]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9d40], xmm0
mov qword [rbp + 0x9d50], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140089d67
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
lea r15, [rsi + 0x38]
lea r14, [rbp - 0x38]
lea rdi, [rbp - 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 0xa
mov dword [rbp - 0x1f], 0x63656863
mov word [rbp - 0x1b], 0x6b
mov qword [rbp - 8], 0
mov qword [rbp + 8], 0
lea rdx, str.false
mov rcx, r14
vzeroupper
call fcn.140008fe0
lea r12, [rbp - 0x50]
mov rcx, r12
mov rdx, rax
call fcn.140009190
mov rcx, r15
mov rdx, r12
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r14
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [rbp - 8]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [rbp + 8]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d250
test byte [rbp - 0x38], 1
jne 0x14008d263
test byte [rbp - 0x50], 1
jne 0x14008d276
test byte [rbp + 0x9d40], 1
je 0x140089e60
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
mov byte [rbp + 0x9d40], 0x10
movabs rax, 0x656c69466c617645
mov qword [rbp + 0x9d41], rax
mov byte [rbp + 0x9d49], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x9d40]
call fcn.1400bb540
mov rsi, qword [rax]
test rsi, rsi
jne 0x140089f54
mov rdi, rax
mov ecx, 0x98
call fcn.140006100
mov rsi, rax
mov rax, qword [rbp + 0x9d50]
mov qword [rsi + 0x30], rax
vmovaps xmm0, xmmword [rbp + 0x9d40]
vmovups xmmword [rsi + 0x20], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x9d40], xmm0
mov qword [rbp + 0x9d50], 0
vxorps xmm1, xmm1, xmm1
vmovups ymmword [rsi + 0x48], ymm1
vmovups ymmword [rsi + 0x38], ymm1
mov byte [rsi + 0x68], 0xc
mov dword [rsi + 0x69], 0x74747562
mov word [rsi + 0x6d], 0x6e6f
mov byte [rsi + 0x6f], 0
mov qword [rsi + 0x80], 0
mov qword [rsi + 0x90], 0
mov rax, qword [rbp - 0x50]
vmovups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rax
mov qword [rdi], rsi
mov rax, qword [0x1422360f0]
mov rax, qword [rax]
mov rdx, rsi
test rax, rax
je 0x140089f3e
mov qword [0x1422360f0], rax
mov rdx, qword [rdi]
mov rcx, qword [0x1422360f8]
vzeroupper
call fcn.140086130
inc qword [0x142236100]
lea r12, [rsi + 0x38]
lea r15, [rbp - 0x38]
lea rdi, [rbp - 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp - 0x40], ymm0
vmovups ymmword [rbp - 0x50], ymm0
mov byte [rbp - 0x20], 0xc
mov dword [rbp - 0x1f], 0x69727473
mov word [rbp - 0x1b], 0x676e
mov byte [rbp - 0x19], 0
mov qword [rbp - 8], 0
lea rax, [0x1400bbcb0]
mov qword [rbp + 8], rax
lea rdx, str.pikafish.nnue
mov rcx, r15
vzeroupper
call fcn.140008fe0
lea rbx, [rbp - 0x50]
mov rcx, rbx
mov rdx, rax
call fcn.140009190
mov rcx, r12
mov rdx, rbx
call fcn.140009190
lea rcx, [rsi + 0x50]
mov rdx, r15
call fcn.140009190
lea rcx, [rsi + 0x68]
mov rdx, rdi
call fcn.140009190
vmovups xmm0, xmmword [rbp - 8]
vmovups xmmword [rsi + 0x80], xmm0
mov rax, qword [rbp + 8]
mov qword [rsi + 0x90], rax
mov rax, qword [0x1422599d8]
lea rcx, [rax + 1]
mov qword [0x1422599d8], rcx
mov qword [rsi + 0x88], rax
test byte [rbp - 0x20], 1
jne 0x14008d291
test byte [rbp - 0x38], 1
jne 0x14008d2a4
test byte [rbp - 0x50], 1
jne 0x14008d2b7
test byte [rbp + 0x9d40], 1
je 0x14008a03e
mov rcx, qword [rbp + 0x9d50]
call fcn.1400061e0
movzx eax, byte [0x1400f2f80]
test al, al
je 0x14008d783
mov rsi, qword [0x1422599e0]
mov rdi, qword [0x1422599e8]
cmp rsi, rdi
je 0x14008a072
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + 0x10]
add rsi, 8
cmp rsi, rdi
jne 0x14008a060
movzx eax, byte [0x1400f2f80]
test al, al
je 0x14008d7cb
mov rsi, qword [0x1422599e0]
mov rdi, qword [0x1422599e8]
cmp rsi, rdi
je 0x14008a0b2
nop word cs:[rax + rax]
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + 0x18]
add rsi, 8
cmp rsi, rdi
jne 0x14008a0a0
vmovaps zmm0, zmmword [0x1400d4100]
vmovaps zmmword [0x142238e40], zmm0
vmovaps zmm0, zmmword [0x1400d4140]
vmovaps zmmword [0x142238e80], zmm0
vmovaps zmm0, zmmword [0x1400d4180]
vmovaps zmmword [0x142238ec0], zmm0
vmovaps zmm0, zmmword [0x1400d41c0]
vmovaps zmmword [0x142238f00], zmm0
vmovaps zmm0, zmmword [0x1400d4200]
vmovaps zmmword [0x142238f40], zmm0
vmovaps zmm0, zmmword [0x1400d4240]
vmovaps zmmword [0x142238f80], zmm0
vmovaps zmm0, zmmword [0x1400d4280]
vmovaps zmmword [0x142238fc0], zmm0
vmovaps zmm0, zmmword [0x1400d42c0]
vmovaps zmmword [0x142239000], zmm0
vmovaps zmm0, zmmword [0x1400d4300]
vmovaps zmmword [0x142239040], zmm0
vmovaps zmm0, zmmword [0x1400d4340]
vmovaps zmmword [0x142239080], zmm0
vmovaps zmm0, zmmword [0x1400d4380]
vmovaps zmmword [0x1422390c0], zmm0
vmovaps zmm0, zmmword [0x1400d43c0]
vmovaps zmmword [0x142239100], zmm0
vmovaps zmm0, zmmword [0x1400d4400]
vmovaps zmmword [0x142239140], zmm0
vmovaps zmm0, zmmword [0x1400d4440]
vmovaps zmmword [0x142239180], zmm0
vmovaps zmm0, zmmword [0x1400d4480]
vmovaps zmmword [0x1422391c0], zmm0
vmovaps zmm0, zmmword [0x1400d44c0]
vmovaps zmmword [0x142239200], zmm0
vmovaps zmm0, zmmword [0x1400d4500]
vmovaps zmmword [0x142239240], zmm0
vmovaps zmm0, zmmword [0x1400d4540]
vmovaps zmmword [0x142239280], zmm0
vmovaps zmm0, zmmword [0x1400d4580]
vmovaps zmmword [0x1422392c0], zmm0
vmovaps zmm0, zmmword [0x1400d45c0]
vmovaps zmmword [0x142239300], zmm0
vmovaps zmm0, zmmword [0x1400d4600]
vmovaps zmmword [0x142239340], zmm0
vmovaps zmm0, zmmword [0x1400d4640]
vmovaps zmmword [0x142239380], zmm0
vmovaps ymm0, ymmword [0x1400d4680]
vmovaps ymmword [0x1422393c0], ymm0
lea rax, [0x142206609]
xor ecx, ecx
vmovdqa64 zmm0, zmmword [0x1400d46c0]
vmovdqa64 zmm1, zmmword [0x1400d4700]
vmovdqa64 zmm2, zmmword [0x1400d4740]
vmovdqa64 zmm3, zmmword [0x1400d4780]
vmovdqa64 zmm4, zmmword [0x1400d47c0]
vmovdqa64 zmm5, zmmword [0x1400d4800]
vmovdqa64 zmm16, zmmword [0x1400d4840]
vmovdqa64 zmm17, zmmword [0x1400d4880]
vmovdqa64 zmm18, zmmword [0x1400d48c0]
vmovdqa64 zmm19, zmmword [0x1400d4900]
vmovdqa64 ymm20, ymmword [0x1400d4940]
vmovdqa64 ymm21, ymmword [0x1400d4960]
nop dword [rax + rax]
mov edx, ecx
imul r8, rdx, 0x38e38e39
shr r8, 0x21
lea r9d, [r8 + r8*8]
mov edx, ecx
sub edx, r9d
vpbroadcastd zmm22, r8d
vpbroadcastd zmm23, edx
vpaddd zmm24, zmm23, zmm0
vpabsd zmm24, zmm24
vpaddd zmm25, zmm22, zmm1
vpabsd zmm25, zmm25
vpmaxud zmm24, zmm24, zmm25
vpmovdb xmmword [rax - 0x59], zmm24
vpaddd zmm24, zmm23, zmm2
vpabsd zmm24, zmm24
vpaddd zmm25, zmm22, zmm3
vpabsd zmm25, zmm25
vpmaxud zmm24, zmm24, zmm25
vpmovdb xmmword [rax - 0x49], zmm24
vpaddd zmm24, zmm23, zmm4
vpabsd zmm24, zmm24
vpaddd zmm25, zmm22, zmm5
vpabsd zmm25, zmm25
vpmaxud zmm24, zmm24, zmm25
vpmovdb xmmword [rax - 0x39], zmm24
vpaddd zmm24, zmm23, zmm16
vpabsd zmm24, zmm24
vpaddd zmm25, zmm22, zmm17
vpabsd zmm25, zmm25
vpmaxud zmm24, zmm24, zmm25
vpmovdb xmmword [rax - 0x29], zmm24
vpaddd zmm24, zmm23, zmm18
vpabsd zmm24, zmm24
vpaddd zmm25, zmm22, zmm19
vpabsd zmm25, zmm25
vpmaxud zmm24, zmm24, zmm25
vpmovdb xmmword [rax - 0x19], zmm24
vpaddd ymm23, ymm23, ymm20
vpabsd ymm23, ymm23
vpaddd ymm22, ymm22, ymm21
vpabsd ymm22, ymm22
vpmaxud ymm22, ymm23, ymm22
lea r9d, [rdx - 7]
mov r10d, r9d
neg r10d
cmovs r10d, r9d
add r8d, 0xfffffff7
mov r9d, r8d
neg r9d
cmovs r9d, r8d
cmp r10d, r9d
cmovbe r10d, r9d
vpmovdb qword [rax - 9], ymm22
mov byte [rax - 1], r10b
add edx, 0xfffffff8
mov r8d, edx
neg r8d
cmovs r8d, edx
cmp r8d, r9d
cmovbe r8d, r9d
mov byte [rax], r8b
inc rcx
add rax, 0x5a
cmp rcx, 0x5a
jne 0x14008a300
mov r12, 0xfffffffffffffff7
lea rax, [0x1422065b9]
mov qword [rbp + 0x9ea0], rax
lea rax, [0x142238ed0]
mov qword [rbp + 0x9ea8], rax
lea rax, [0x1422065b0]
mov qword [rbp + 0x9ec0], rax
mov dword [rbp + 0x9e88], 0xffffffee
lea rax, [0x142238e50]
mov qword [rbp + 0x9e78], rax
lea rax, [0x1422065b1]
mov qword [rbp + 0x9e70], rax
mov dword [rbp + 0x9e68], 0xfffffffe
lea r8, [0x142238e40]
xor r13d, r13d
xor r10d, r10d
jmp 0x14008a532
mov r12, qword [rbp + 0x9e58]
inc r12
add qword [rbp + 0x9ea0], 0x5b
add qword [rbp + 0x9ea8], 0x10
add qword [rbp + 0x9ec0], 0x5a
inc dword [rbp + 0x9e88]
add qword [rbp + 0x9e78], 0x10
add qword [rbp + 0x9e70], 0x5b
inc dword [rbp + 0x9e68]
mov rax, qword [rbp + 0x9e98]
mov r13, rax
cmp rax, 0x5a
je 0x14008a983
mov eax, r13d
imul rax, rax, 0x38e38e39
shr rax, 0x21
lea ecx, [rax + rax*8]
mov esi, r13d
sub esi, ecx
xor edx, edx
mov eax, 0x1ff
shld rdx, rax, cl
shlx r9, rax, rcx
test cl, 0x40
cmovne rdx, r9
mov edi, 0
cmovne r9, rdi
mov r11d, 0x20100
mov ecx, esi
movabs rax, 0x8040201008040201
shld r11, rax, cl
shlx rcx, rax, rsi
test sil, 0x40
cmovne r11, rcx
cmovne rcx, rdi
lea eax, [r13 + 9]
mov esi, 0
mov edi, 0
cmp eax, 0x59
ja 0x14008a5e5
mov rbx, qword [rbp + 0x9ea8]
mov r14, qword [rbp + 0x9ea0]
mov r15, r12
xor esi, esi
xor edi, edi
nop word [rax + rax]
cmp byte [r14], 1
jne 0x14008a5e5
or rsi, qword [rbx]
or rdi, qword [rbx + 8]
add r15, 9
add r14, 0x333
add rbx, 0x90
cmp r15, 0x48
jb 0x14008a5c0
movsxd rbx, r13d
lea eax, [r13 - 9]
cmp eax, 0x59
ja 0x14008a628
lea r14, [rbx - 9]
mov r15, qword [rbp + 0x9ec0]
nop dword [rax]
mov eax, r14d
cmp byte [r15 + rax], 1
jne 0x14008a628
shl rax, 4
or rdi, qword [rax + r8 + 8]
or rsi, qword [rax + r8]
add r14, 0xfffffffffffffff7
add r15, 0xfffffffffffffcd6
cmp r14d, 0x5a
jb 0x14008a600
lea eax, [r13 + 1]
cmp eax, 0x59
ja 0x14008a664
lea r14, [rbx + 1]
mov r15, qword [rbp + 0x9ec0]
nop dword [rax]
mov eax, r14d
cmp byte [r15 + rax], 1
jne 0x14008a664
shl rax, 4
or rdi, qword [rax + r8 + 8]
or rsi, qword [rax + r8]
inc r14
add r15, 0x5a
cmp r14, 0x5a
jne 0x14008a640
lea eax, [r13 - 1]
cmp eax, 0x59
ja 0x14008a6a2
dec rbx
mov r14, qword [rbp + 0x9ec0]
nop word [rax + rax]
mov eax, ebx
cmp byte [r14 + rax], 1
jne 0x14008a6a2
shl rax, 4
or rdi, qword [rax + r8 + 8]
or rsi, qword [rax + r8]
dec rbx
add r14, 0xffffffffffffffa6
cmp ebx, 0x5a
jb 0x14008a680
mov qword [rbp + 0x9e58], r12
not edx
not r9d
and edx, 0x3fe0000
and r9d, 0x1ff
mov eax, 0x2030180
andn eax, r11d, eax
or eax, edx
movabs rdx, 0xc06030180c060301
andn rcx, rcx, rdx
or rcx, r9
andn rcx, rcx, rsi
andn r11, rax, rdi
lea rdx, [r13*2]
add rdx, r13
shl rdx, 4
lea r8, [0x1400f32d0]
lea rax, [r8 + rdx]
mov qword [rax], rcx
mov qword [rax + 8], r11
popcnt rax, rcx
mov qword [rbp + 0x9eb8], rax
mov dword [rdx + r8 + 0x28], eax
mov rax, r13
shl rax, 4
lea rsi, [0x1400d6750]
mov r9, qword [rax + rsi]
mov rax, qword [rax + rsi + 8]
mov qword [rdx + r8 + 0x10], r9
mov qword [rdx + r8 + 0x18], rax
test r13, r13
je 0x14008a760
lea rax, [r13 - 1]
mov qword [rbp + 0x9eb0], rax
lea rax, [rax + rax*2]
shl rax, 4
shl r10, 4
add r10, qword [rax + r8 + 0x20]
mov r14, r10
jmp 0x14008a772
mov qword [rbp + 0x9eb0], 0xffffffffffffffff
lea r14, [0x141181c90]
mov qword [rdx + r8 + 0x20], r14
lea rax, [r13 - 9]
mov qword [rbp + 0x9e80], rax
lea rax, [r13 + 1]
mov qword [rbp + 0x9e98], rax
xor r10d, r10d
xor r9d, r9d
xor edi, edi
lea r8, [0x142238e40]
mov qword [rbp + 0x9e90], r14
jmp 0x14008a7fa
pext rax, rdi, r11
mov rsi, qword [rbp + 0x9eb8]
shlx rax, rax, rsi
pext rsi, r9, rcx
or esi, eax
shl rsi, 4
mov r14, qword [rbp + 0x9e90]
mov qword [r14 + rsi + 8], rdx
mov qword [r14 + rsi], rbx
inc r10
sub r9, rcx
sbb rdi, r11
and r9, rcx
and rdi, r11
mov rax, r9
or rax, rdi
mov r13, r12
je 0x14008a4e0
mov ebx, 0
mov edx, 0
mov r12, r13
cmp r13, 0x50
ja 0x14008a870
mov rsi, qword [rbp + 0x9ea8]
mov r14, qword [rbp + 0x9ea0]
mov r13, r12
xor ebx, ebx
xor edx, edx
nop word cs:[rax + rax]
cmp byte [r14], 1
jne 0x14008a870
mov rax, qword [rsi]
mov r15, qword [rsi + 8]
or rdx, r15
or rbx, rax
cmp r13, 0x47
ja 0x14008a870
and r15, rdi
and rax, r9
add r14, 0x333
add rsi, 0x90
add r13, 9
or rax, r15
je 0x14008a830
nop word cs:[rax + rax]
mov r13, qword [rbp + 0x9e80]
cmp r13d, 0x59
ja 0x14008a8d0
mov r14, qword [rbp + 0x9ec0]
mov esi, dword [rbp + 0x9e88]
nop word [rax + rax]
mov r15d, r13d
cmp byte [r14 + r15], 1
jne 0x14008a8d0
shl r15, 4
mov rax, qword [r15 + r8]
mov r15, qword [r15 + r8 + 8]
or rdx, r15
or rbx, rax
cmp esi, 0x59
ja 0x14008a8d0
and r15, rdi
and rax, r9
add r13, 0xfffffffffffffff7
add esi, 0xfffffff7
add r14, 0xfffffffffffffcd6
or rax, r15
je 0x14008a890
nop dword [rax + rax]
cmp r12, 0x58
ja 0x14008a920
mov rsi, qword [rbp + 0x9e70]
mov r14, qword [rbp + 0x9e78]
mov r13, qword [rbp + 0x9e98]
nop dword [rax + rax]
cmp byte [rsi], 1
jne 0x14008a920
mov rax, qword [r14]
mov r15, qword [r14 + 8]
or rdx, r15
or rbx, rax
cmp r13, 0x58
ja 0x14008a920
and r15, rdi
and rax, r9
inc r13
add r14, 0x10
add rsi, 0x5b
or rax, r15
je 0x14008a8f0
nop
mov r13, qword [rbp + 0x9eb0]
cmp r13d, 0x59
ja 0x14008a7b0
mov r14, qword [rbp + 0x9ec0]
mov esi, dword [rbp + 0x9e68]
nop
mov r15d, r13d
cmp byte [r14 + r15], 1
jne 0x14008a7b0
shl r15, 4
mov rax, qword [r15 + r8]
mov r15, qword [r15 + r8 + 8]
or rdx, r15
or rbx, rax
cmp esi, 0x59
ja 0x14008a7b0
and r15, rdi
and rax, r9
dec r13
dec esi
add r14, 0xffffffffffffffa6
or rax, r15
je 0x14008a940
jmp 0x14008a7b0
mov qword [rbp + 0x9eb8], 0xfffffffffffffff7
lea rax, [0x1422065b9]
mov qword [rbp + 0x9e78], rax
lea rax, [0x142238ed0]
mov qword [rbp + 0x9e70], rax
lea rax, [0x1422065b0]
mov qword [rbp + 0x9ec0], rax
mov dword [rbp + 0x9e68], 1
mov dword [rbp + 0x9e58], 0xffffffff
lea r11, [0x1400f6020]
xor esi, esi
xor r14d, r14d
jmp 0x14008aa26
inc qword [rbp + 0x9eb8]
add qword [rbp + 0x9e78], 0x5b
add qword [rbp + 0x9e70], 0x10
add qword [rbp + 0x9ec0], 0x5a
inc dword [rbp + 0x9e68]
inc dword [rbp + 0x9e58]
mov rax, qword [rbp + 0x9e88]
mov rsi, rax
cmp rax, 0x5a
lea r11, [0x1400f6020]
je 0x14008ae11
mov eax, esi
imul rax, rax, 0x38e38e39
shr rax, 0x21
lea ecx, [rax + rax*8]
xor edx, edx
mov eax, 0x1ff
shld rdx, rax, cl
mov r13d, esi
sub r13d, ecx
shlx r9, rax, rcx
test cl, 0x40
cmovne rdx, r9
mov r10d, 0
cmovne r9, r10
not edx
not r9d
mov eax, 0x20100
mov ecx, r13d
movabs r8, 0x8040201008040201
shld rax, r8, cl
and edx, 0x3fe0000
and r9d, 0x1ff
test r13b, 0x40
shlx rcx, r8, r13
cmovne rax, rcx
cmovne rcx, r10
mov r8d, 0x2030180
andn eax, eax, r8d
or eax, edx
movabs rdx, 0xc06030180c060301
andn rcx, rcx, rdx
or rcx, r9
mov rdx, rsi
shl rdx, 4
lea r9, [rdx + rdx*2]
lea r8, [0x1400f32d0]
andn rax, rax, qword [r8 + r9 + 8]
andn rcx, rcx, qword [r8 + r9]
mov qword [r11 + r9], rcx
mov qword [rbp + 0x9eb0], rax
mov qword [r11 + r9 + 8], rax
lea rax, [0x1400d6750]
vmovdqa xmm0, xmmword [rdx + rax]
mov qword [rbp + 0x9e90], rcx
popcnt rax, rcx
mov qword [rbp + 0x9e80], rax
mov dword [r11 + r9 + 0x28], eax
vmovdqa xmmword [r11 + r9 + 0x10], xmm0
test rsi, rsi
je 0x14008ab40
lea rax, [rsi - 1]
mov qword [rbp + 0x9e98], rax
lea rax, [rax + rax*2]
shl rax, 4
shl r14, 4
add r14, qword [rax + r11 + 0x20]
mov rdx, r14
jmp 0x14008ab52
mov qword [rbp + 0x9e98], 0xffffffffffffffff
lea rdx, [0x1400fa660]
lea rax, [rsi + rsi*2]
shl rax, 4
mov qword [rax + r11 + 0x20], rdx
lea rax, [rsi - 9]
mov qword [rbp + 0x9ea8], rax
lea rax, [rsi + 1]
mov qword [rbp + 0x9e88], rax
xor r14d, r14d
xor edi, edi
xor ebx, ebx
lea r8, [0x142238e40]
mov qword [rbp + 0x9ea0], rdx
jmp 0x14008abeb
mov r9, qword [rbp + 0x9eb0]
pext rax, rbx, r9
mov rcx, qword [rbp + 0x9e80]
shlx rax, rax, rcx
mov r10, qword [rbp + 0x9e90]
pext rcx, rdi, r10
or ecx, eax
shl rcx, 4
mov rax, qword [rbp + 0x9ea0]
mov qword [rax + rcx + 8], rdx
mov rdx, rax
mov qword [rax + rcx], r12
inc r14
sub rdi, r10
sbb rbx, r9
and rdi, r10
and rbx, r9
mov rax, rdi
or rax, rbx
mov rsi, r13
je 0x14008a9e0
mov r12d, 0
mov edx, 0
mov r13, rsi
cmp rsi, 0x50
ja 0x14008ac70
xor r11d, r11d
mov r10, qword [rbp + 0x9e70]
mov rsi, qword [rbp + 0x9e78]
mov r15, qword [rbp + 0x9eb8]
xor r12d, r12d
xor edx, edx
jmp 0x14008ac4f
or r12, r9
or rdx, rcx
and r9, rdi
and rcx, rbx
or rcx, r9
jne 0x14008ac70
mov eax, r11d
add r15, 9
add rsi, 0x333
add r10, 0x90
mov r11d, eax
cmp r15, 0x48
jae 0x14008ac70
cmp byte [rsi], 1
jne 0x14008ac70
mov r9, qword [r10]
mov rcx, qword [r10 + 8]
test r11b, 1
jne 0x14008ac20
and r9, rdi
and rcx, rbx
mov al, 1
or rcx, r9
jne 0x14008ac34
jmp 0x14008ac31
mov r10, qword [rbp + 0x9ea8]
cmp r10d, 0x59
ja 0x14008ad00
xor r11d, r11d
mov rax, qword [rbp + 0x9eb8]
mov r15d, eax
mov rsi, qword [rbp + 0x9ec0]
jmp 0x14008accc
or r12, r9
or rdx, rcx
and r9, rdi
and rcx, rbx
or rcx, r9
jne 0x14008ad00
mov eax, r11d
add r10, 0xfffffffffffffff7
add rsi, 0xfffffffffffffcd6
add r15d, 0xfffffff7
mov r11d, eax
cmp r10d, 0x5a
jae 0x14008ad00
mov eax, r15d
cmp byte [rsi + rax], 1
jne 0x14008ad00
mov eax, r10d
shl rax, 4
mov r9, qword [rax + r8]
mov rcx, qword [rax + r8 + 8]
test r11b, 1
jne 0x14008aca0
and r9, rdi
and rcx, rbx
mov al, 1
or rcx, r9
jne 0x14008acb4
jmp 0x14008acb1
cmp r13, 0x58
ja 0x14008ad80
xor r11d, r11d
mov esi, dword [rbp + 0x9e68]
mov r10, qword [rbp + 0x9ec0]
mov r15, qword [rbp + 0x9e88]
jmp 0x14008ad46
or r12, r9
or rdx, rcx
and r9, rdi
and rcx, rbx
or rcx, r9
jne 0x14008ad80
mov eax, r11d
inc r15
add r10, 0x5a
inc esi
mov r11d, eax
cmp r15, 0x5a
je 0x14008ad80
mov eax, esi
cmp byte [r10 + rax], 1
jne 0x14008ad80
mov eax, r15d
shl rax, 4
mov r9, qword [rax + r8]
mov rcx, qword [rax + r8 + 8]
test r11b, 1
jne 0x14008ad20
and r9, rdi
and rcx, rbx
mov al, 1
or rcx, r9
jne 0x14008ad34
jmp 0x14008ad31
mov r10, qword [rbp + 0x9e98]
cmp r10d, 0x59
ja 0x14008ab90
xor r11d, r11d
mov r15d, dword [rbp + 0x9e58]
mov rsi, qword [rbp + 0x9ec0]
jmp 0x14008addf
or r12, r9
or rdx, rcx
and r9, rdi
and rcx, rbx
or rcx, r9
jne 0x14008ab90
mov eax, r11d
dec r10
add rsi, 0xffffffffffffffa6
dec r15d
mov r11d, eax
cmp r10d, 0x5a
jae 0x14008ab90
mov eax, r15d
cmp byte [rsi + rax], 1
jne 0x14008ab90
mov eax, r10d
shl rax, 4
mov r9, qword [rax + r8]
mov rcx, qword [rax + r8 + 8]
test r11b, 1
jne 0x14008adb0
and r9, rdi
and rcx, rbx
mov al, 1
or rcx, r9
jne 0x14008adc8
jmp 0x14008adc5
mov rsi, qword [0x141181c60]
lea r13, [0x141181c68]
vpxor xmm0, xmm0, xmm0
xor r12d, r12d
xor r10d, r10d
mov qword [rbp + 0x9e80], rsi
jmp 0x14008ae4d
mov qword [rbp + 0x9eb0], r10
mov eax, r12d
imul rax, rax, 0x38e38e39
shr rax, 0x21
lea ecx, [rax + rax*8]
mov r9d, r12d
sub r9d, ecx
xor r10d, r10d
mov eax, 0x1ff
shld r10, rax, cl
shlx rax, rax, rcx
test cl, 0x40
cmovne r10, rax
mov edx, 0
cmovne rax, rdx
mov qword [rbp + 0x9eb8], rax
mov r11d, 0x20100
mov ecx, r9d
movabs rax, 0x8040201008040201
shld r11, rax, cl
shlx rax, rax, r9
mov qword [rbp + 0x9ec0], r9
test r9b, 0x40
cmovne r11, rax
mov qword [rbp + 0x9e90], r11
cmovne rax, rdx
mov qword [rbp + 0x9e98], rax
movsxd rax, r12d
cmp rsi, r13
mov qword [rbp + 0x9e70], rax
je 0x14008b030
imul r9, rax, 0xffffffffc71c71c7
mov rax, r9
shr rax, 0x3f
sar r9, 0x21
add r9d, eax
xor ebx, ebx
xor r14d, r14d
mov r15, rsi
jmp 0x14008af22
mov edi, dword [r15 + 0x1c]
lea ecx, [rdi + r12]
mov esi, 0
mov eax, 0
cmp ecx, 0x59
ja 0x14008aff6
mov eax, ecx
imul rsi, r12, 0x5a
lea rdx, [0x1422065b0]
add rsi, rdx
cmp byte [rax + rsi], 3
mov esi, 0
mov eax, 0
ja 0x14008aff6
mov rdi, qword [r15 + 8]
test rdi, rdi
je 0x14008b010
xor ebx, ebx
xor r14d, r14d
not r10d
mov r9, qword [rbp + 0x9eb8]
not r9d
and r10d, 0x3fe0000
and r9d, 0x1ff
mov eax, 0x2030180
mov rcx, qword [rbp + 0x9e90]
andn eax, ecx, eax
or eax, r10d
movabs rcx, 0xc06030180c060301
mov rdx, qword [rbp + 0x9e98]
andn rdx, rdx, rcx
or rdx, r9
lea rcx, [r12 + r12*2]
shl rcx, 4
lea r10, [0x1400f4f40]
lea r9, [r10 + rcx]
xor r11d, r11d
cmp r12, 0x2d
setae r11b
shl r11, 4
lea rsi, [0x1400d8540]
mov r15, qword [r11 + rsi]
mov rsi, qword [r11 + rsi + 8]
andn r11, rax, r14
andn rdi, rdx, rbx
mov qword [rbp + 0x9e98], r15
and rdi, r15
mov qword [rbp + 0x9ea0], rsi
and r11, rsi
mov qword [r9 + 8], r11
mov qword [r9], rdi
popcnt rsi, rdi
mov dword [rcx + r10 + 0x28], esi
mov rax, r12
shl rax, 4
lea r9, [0x1400d6cf0]
mov rdx, qword [rax + r9]
mov qword [rcx + r10 + 0x10], rdx
mov rax, qword [rax + r9 + 8]
mov qword [rcx + r10 + 0x18], rax
lea r15, [0x1400f83e0]
test r12, r12
je 0x14008b11e
mov rax, qword [rbp + 0x9eb0]
shl rax, 4
add rax, qword [rcx + r10 - 0x10]
mov r15, rax
mov qword [rbp + 0x9e90], rsi
mov qword [rcx + r10 + 0x20], r15
mov rsi, qword [rbp + 0x9e80]
cmp rsi, r13
je 0x14008b350
imul rcx, qword [rbp + 0x9e70], 0xffffffffc71c71c7
mov rax, rcx
shr rax, 0x3f
sar rcx, 0x21
add ecx, eax
mov qword [rbp + 0x9eb8], rcx
xor r10d, r10d
xor ebx, ebx
xor r14d, r14d
mov qword [rbp + 0x9ea8], r11
mov qword [rbp + 0x9e88], rdi
mov qword [rbp + 0x9e78], r15
jmp 0x14008b1f1
xor r10d, r10d
xor eax, eax
xor ecx, ecx
mov rbx, qword [rbp + 0x9e90]
nop
pext rdx, rcx, r11
shlx rdx, rdx, rbx
pext r9, rax, rdi
or r9d, edx
shl r9, 4
vmovdqa xmmword [r15 + r9], xmm0
inc r10
sub rax, rdi
sbb rcx, r11
and rax, rdi
and rcx, r11
mov rdx, rax
or rdx, rcx
jne 0x14008b360
movzx eax, byte [0x1400f43d0]
mov ecx, eax
shr ecx, 1
test al, 1
lea r9, [0x1400f43d1]
cmovne r9, qword [0x1400f43e0]
cmovne rcx, qword [0x1400f43d8]
mov qword [rsp + 0x20], rcx
lea rcx, [0x1400f43b8]
mov r8d, 1
xor edx, edx
call fcn.140006f20
test byte [rbp + 0x9d40], 1
jne 0x1400883cf
jmp 0x1400883db
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x1400885ab
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x1400885b5
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9d40], 1
jne 0x1400885be
jmp 0x1400885ca
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x1400887d1
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x1400887db
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x1400887e4
jmp 0x1400887f0
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x1400889ed
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x1400889f7
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x140088a00
jmp 0x140088a0c
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140088bb1
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x140088bbb
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9d40], 1
jne 0x140088bc4
jmp 0x140088bd0
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140088d86
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x140088d90
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9d40], 1
jne 0x140088d99
jmp 0x140088da5
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140088fa9
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x140088fb3
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x140088fbc
jmp 0x140088fc8
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x1400891da
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x1400891e4
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x1400891ed
jmp 0x1400891f9
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140089403
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x14008940d
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x140089416
jmp 0x140089422
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140089621
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x14008962b
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x140089634
jmp 0x140089640
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140089845
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x14008984f
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x140089858
jmp 0x140089864
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140089a2c
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x140089a36
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9d40], 1
jne 0x140089a3f
jmp 0x140089a4b
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140089c60
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x140089c6a
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9c30], 1
jne 0x140089c73
jmp 0x140089c7f
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x140089e41
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x140089e4b
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9d40], 1
jne 0x140089e54
jmp 0x140089e60
mov rcx, qword [rbp - 0x10]
call fcn.1400061e0
test byte [rbp - 0x38], 1
je 0x14008a01f
mov rcx, qword [rbp - 0x28]
call fcn.1400061e0
test byte [rbp - 0x50], 1
je 0x14008a029
mov rcx, qword [rbp - 0x40]
call fcn.1400061e0
test byte [rbp + 0x9d40], 1
jne 0x14008a032
jmp 0x14008a03e
lea rcx, [0x1400f2f80]
call fcn.1400046e0
test eax, eax
je 0x14008a04d
vxorps xmm0, xmm0, xmm0
vmovups xmmword [0x1422599e0], xmm0
mov qword [0x1422599f0], 0
lea rcx, [0x14008d820]
call fcn.140001370
lea rcx, [0x1400f2f80]
call fcn.1400047bb
jmp 0x14008a04d
lea rcx, [0x1400f2f80]
call fcn.1400046e0
test eax, eax
je 0x14008a081
vxorps xmm0, xmm0, xmm0
vmovups xmmword [0x1422599e0], xmm0
mov qword [0x1422599f0], 0
lea rcx, [0x14008d820]
call fcn.140001370
lea rcx, [0x1400f2f80]
call fcn.1400047bb
jmp 0x14008a081