Function at 0x1400089c0
Capabilities:
Encode data using base64
Encode data using xor
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xbc8]
sub rsp, 0xca0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x140554040]
xor rax, rsp
mov qword [rbp + 0xb80], rax
mov eax, dword [0x140530768]
xor esi, esi
cmp byte [str.BG_9], sil
movsd xmm0, qword [str.z_JIZ_XP8]
mov dword [rbp - 0x48], eax
mov eax, dword [0x140554008]
lea ecx, [rsi + 8]
movsd qword [rbp - 0x50], xmm0
je 0x140008b71
mov r8d, esi
cmp eax, 2
jl 0x140008b2b
movdqa xmm2, xmmword [0x140534190]
mov r8d, ecx
movdqa xmm4, xmmword [0x140534350]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x1405341b0]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1405341f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [str.z_JIZ_XP8]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1405342f0]
xorps xmm2, xmm0
punpckldq xmm1, xmm3
movd dword [rbp - 0x50], xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1405341f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp - 0x4c]
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1405342f0]
xorps xmm2, xmm0
movd dword [rbp - 0x4c], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop word [rax + rax]
mov eax, 0x4d4873ed
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x140008b40
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0x150]
call fcn.140001c90
xor eax, eax
cmp byte [0x1407065a4], sil
mov qword [rbp + 0x170], rax
lea rax, [fcn.140001c80]
jne 0x140008bab
mov qword [0x140706610], rax
mov byte [0x1407065a4], 1
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0xb8]
call fcn.140001c90
mov rcx, rax
mov qword [rsp + 0x78], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], sil
lea r10, [0x140706620]
mov r15, rax
lea r8, [0x140706e18]
movabs rax, 0xfeeddccbbaa99887
movabs r9, 0xababdbf33353735b
mov r11d, 0xffffffff
jne 0x140008c2c
mov rdx, rax
mov rcx, r10
nop dword [rax]
mov rax, rdx
sub rdx, r11
xor rax, r9
mov qword [rcx], rax
add rcx, 8
cmp rcx, r8
jl 0x140008c10
mov byte [0x1407065a6], 1
movabs rax, 0xfae9e8d7c6b5a493
mov r9d, esi
mov qword [rbp + 0x100], rax
mov rbx, rax
mov qword [rbp + 0x3c0], rax
mov qword [rbp + 0x380], rax
test rdi, rdi
je 0x140008cbf
mov r8, r15
nop dword [rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x140008c70
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x140008c60
movzx r12d, byte [r15]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x3d0], rcx
mov byte [rsp + 0x71], r12b
cmp rdi, 1
jbe 0x140008ce7
movzx r15d, byte [rdi + r15 - 1]
jmp 0x140008cea
mov r15b, 0xae
mov byte [rsp + 0x70], r15b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r12b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140008d10
mov r15, qword [rbp + 0x3d0]
lea r12, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r14, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop word [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r15
movabs r15, 0xaebdccdb0a192837
mov rax, r9
xor rax, r15
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r14 + 0x398]
xor byte [rbp + r14 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r15
mov rax, r10
xor rax, r15
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r14 + 0x399]
xor byte [rbp + r14 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r15
mov rax, r11
xor rax, r15
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r14 + 0x39a]
xor byte [rbp + r14 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r15
mov rdx, r11
mov rax, r9
xor rax, r15
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r14 + 0x39b]
xor byte [rbp + r14 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r15
mov rax, r10
xor rax, r15
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r14 + 0x39c]
xor byte [rbp + r14 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r15
mov rax, r9
xor rax, r15
mov r15d, 8
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r14 + 0x39d]
xor byte [rbp + r14 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r15d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r14, [r14 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r14 + 0x396]
xor byte [rbp + r14 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r15d
mov r15, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r12
div rcx
mov rcx, rdx
shl r15, cl
mov ecx, 8
xor r15, r10
mov r10, r11
mov qword [rbp + 0x398], r15
movzx eax, byte [rbp + r14 + 0x397]
xor byte [rbp + r14 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl r10, cl
xor r10, qword [rbp + 0x380]
mov qword [rbp + 0x380], r10
cmp r13d, 8
jb 0x140008d50
movzx r15d, byte [rsp + 0x70]
movzx edx, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
shl rdx, 7
and rbx, r10
not rdx
imul rcx, r15, 0xff
sub rdx, rcx
lea rcx, [rbp + 0x150]
xor rdx, rbx
mov qword [rbp + 0x170], rdx
mov rdx, qword [rsp + 0x78]
call fcn.140017a00
mov rcx, qword [rsp + 0x78]
call fcn.140001cd0
cmp byte [0x1407065a5], sil
jne 0x140009154
lea rax, [fcn.140001c80]
mov byte [0x1407065a5], 1
mov qword [0x140706610], rax
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x48]
call fcn.140001c90
mov rdx, rax
lea rcx, [rbp - 0x10]
call fcn.140017c30
mov r12, qword [rbp]
lea rcx, [rbp - 0x10]
call fcn.140001d30
cmp byte [0x1407065a7], sil
lea r15, [0x140000000]
mov rdi, rax
lea rbx, [0x140706f20]
movabs r13, 0x101010101010101
jne 0x14000957d
mov r14, rsi
nop word [rax + rax]
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r14 + r15 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r14 + r15 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r14 + r15 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x1400091b0
lea rcx, [rbp + 0x398]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax + rax]
mov r15, qword [rbp + 0x398]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400092db
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009307
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009332
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000935e
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x1400092c0
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x398], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400093b4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400093e0
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000940b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009437
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009463
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000948f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400094bb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x398]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400094e7
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x140009512
mov r15, qword [rbp + 0x398]
jmp 0x1400093a0
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x398], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009544
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x140009568
mov r15, qword [rbp + 0x398]
jmp 0x140009530
mov byte [0x1407065a7], 1
lea r15, [0x140000000]
lea rbx, [0x140706f20]
lea r14, [0x140706fb0]
test r12, r12
je 0x1400096f4
mov r11d, esi
movzx ecx, byte [rdi]
lea r10, [0x140706e18]
mov r9d, esi
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r15
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x1400095c0
inc r9d
inc r10
cmp r9d, 4
jb 0x1400095a0
mov r9d, esi
mov r10, r14
nop dword [rax + rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706e21]
add rdx, r15
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x140009630
inc r9d
inc r10
cmp r9d, 8
jb 0x140009610
mov r9d, esi
mov r10, rbx
nop dword [rax + rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r15
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x1400096a0
inc r9d
inc r10
cmp r9d, 0xc
jb 0x140009680
inc r11d
inc rdi
movsxd rax, r11d
cmp rax, r12
jb 0x140009590
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x1a0]
call fcn.140017c30
mov rcx, rax
mov qword [rsp + 0x78], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], sil
lea r10, [0x140706620]
mov r14, rax
jne 0x14000976c
movabs r8, 0xfeeddccbbaa99887
lea rax, [0x140706e18]
mov rdx, r10
movabs r9, 0xababdbf33353735b
mov r11d, 0xffffffff
nop dword [rax]
mov rcx, r8
sub r8, r11
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x140009750
mov byte [0x1407065a6], 1
movabs rbx, 0xfae9e8d7c6b5a493
mov r9d, esi
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x1400097ef
mov r8, r14
nop
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x1400097a0
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x140009790
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x3d0], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x140009817
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000981a
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140009840
mov r14, qword [rbp + 0x3d0]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop word [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x140009880
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
and rbx, rdx
shl rax, 7
mov rdx, qword [rsp + 0x78]
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rbx
mov qword [rbp + 0x170], rcx
lea rcx, [rbp + 0x150]
call fcn.140017a00
mov rcx, qword [rsp + 0x78]
call fcn.140001cd0
lea rcx, [rbp - 0x10]
call fcn.140001cd0
lea rcx, [rbp + 0x48]
call fcn.140001cd0
mov rdi, qword [rbp + 0x160]
lea rcx, [rbp + 0x150]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x140009cdc
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x140009cc0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x140009d6f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x140009d20
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x140009d10
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x3d0], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x140009d97
movzx r14d, byte [rdi + r14 - 1]
jmp 0x140009d9a
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140009dc0
mov r14, qword [rbp + 0x3d0]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop word [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x140009e00
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
and rbx, rdx
shl rax, 7
mov rdx, qword [rbp + 0x170]
imul r8, r14, 0xff
not r8
sub r8, rax
xor r8, rbx
cmp r8, rdx
je 0x14000a1f7
mov rbx, qword [0x140706610]
lea rcx, [rbp + 0x440]
call fcn.1400047a0
mov rcx, rax
lea rdx, [rbp + 0x150]
mov rax, rbx
call qword [case.0x14001f545.0]
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x88]
call fcn.140017c30
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0xb60]
call fcn.140017c30
mov r12, qword [rbp + 0xb70]
lea rcx, [rbp + 0xb60]
call fcn.140001d30
cmp byte [0x1407065a7], sil
lea r13, [0x140000000]
mov rdi, rax
jne 0x14000a60f
mov r14, rsi
movabs r15, 0x101010101010101
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r15
mov qword [r14 + r13 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r15
mov qword [r14 + r13 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r15
mov qword [r14 + r13 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000a254
lea rcx, [rbp + 0x388]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax]
mov r15, qword [rbp + 0x388]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a37b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3a7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3d2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3fe
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x14000a360
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a454
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a480
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a4ab
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a4d7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a503
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a52f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a55b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a587
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x14000a5b2
mov r15, qword [rbp + 0x388]
jmp 0x14000a440
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a5e4
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14000a608
mov r15, qword [rbp + 0x388]
jmp 0x14000a5d0
mov byte [0x1407065a7], 1
test r12, r12
je 0x14000a794
mov r11d, esi
lea rbx, [0x140706e18]
lea r14, [0x140706fb0]
nop dword [rax]
movzx ecx, byte [rdi]
mov r9d, esi
mov r10, rbx
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000a660
inc r9d
inc r10
cmp r9d, 4
jb 0x14000a640
mov r9d, esi
mov r10, r14
nop dword [rax + rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706e21]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000a6d0
inc r9d
inc r10
cmp r9d, 8
jb 0x14000a6b0
mov r9d, esi
lea r10, [0x140706f20]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000a740
inc r9d
inc r10
cmp r9d, 0xc
jb 0x14000a720
inc r11d
inc rdi
movsxd rax, r11d
cmp rax, r12
jb 0x14000a630
lea rcx, [rbp + 0x88]
call fcn.140001cd0
movzx eax, word [0x1405305b0]
lea rdx, [0x1405230e8]
movsd xmm0, qword [str.BKH_b]
lea rcx, [rbp + 0x128]
movsd qword [rbp - 0x80], xmm0
xor byte [rbp - 0x7f], 0x38
xor byte [rbp - 0x7e], 0x39
xor byte [rbp - 0x7d], 0x3a
xor byte [rbp - 0x7c], 0x3b
xor byte [rbp - 0x7b], 0x3c
xor byte [rbp - 0x7a], 0x3d
xor byte [rbp - 0x79], 0x3e
mov word [rbp - 0x78], ax
movzx eax, byte [0x1405305b2]
xor byte [rbp - 0x78], 0x3f
xor al, 0x41
xor byte [rbp - 0x77], 0x40
mov byte [rbp - 0x76], al
mov byte [rbp - 0x80], 0x75
call fcn.140001c90
xor eax, eax
cmp byte [0x1407065a4], al
mov qword [rbp + 0x148], rax
jne 0x14000a825
lea rax, [fcn.140001c80]
mov byte [0x1407065a4], 1
mov qword [0x140706610], rax
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0xb8]
call fcn.140001c90
mov rcx, rax
mov qword [rsp + 0x78], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x14000a89c
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000a880
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000a92f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000a8e0
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000a8d0
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x3d0], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000a957
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000a95a
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000a980
mov r14, qword [rbp + 0x3d0]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop word [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x14000a9c0
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
and rbx, rdx
shl rax, 7
mov rdx, qword [rsp + 0x78]
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rbx
mov qword [rbp + 0x148], rcx
lea rcx, [rbp + 0x128]
call fcn.140017a00
mov rcx, qword [rsp + 0x78]
call fcn.140001cd0
cmp byte [0x1407065a5], sil
jne 0x14000adc5
lea rax, [fcn.140001c80]
mov byte [0x1407065a5], 1
mov qword [0x140706610], rax
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x48]
call fcn.140001c90
mov rdx, rax
lea rcx, [rbp - 0x10]
call fcn.140017c30
mov r12, qword [rbp]
lea rcx, [rbp - 0x10]
call fcn.140001d30
cmp byte [0x1407065a7], sil
lea r13, [0x140000000]
mov rdi, rax
jne 0x14000b1cf
mov r14, rsi
movabs r15, 0x101010101010101
nop
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r15
mov qword [r14 + r13 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r15
mov qword [r14 + r13 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r15
mov qword [r14 + r13 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000ae10
lea rcx, [rbp + 0x388]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax + rax]
mov r15, qword [rbp + 0x388]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000af3b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000af67
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000af92
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000afbe
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x14000af20
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b014
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b040
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b06b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b097
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b0c3
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b0ef
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b11b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b147
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x14000b172
mov r15, qword [rbp + 0x388]
jmp 0x14000b000
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b1a4
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14000b1c8
mov r15, qword [rbp + 0x388]
jmp 0x14000b190
mov byte [0x1407065a7], 1
test r12, r12
je 0x14000b344
mov r11d, esi
nop dword [rax + rax]
movzx ecx, byte [rdi]
lea r10, [0x140706e18]
mov r9d, esi
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000b210
inc r9d
inc r10
cmp r9d, 4
jb 0x14000b1f0
mov r9d, esi
lea r10, [0x140706fb0]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706e21]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000b280
inc r9d
inc r10
cmp r9d, 8
jb 0x14000b260
mov r9d, esi
lea r10, [0x140706f20]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000b2f0
inc r9d
inc r10
cmp r9d, 0xc
jb 0x14000b2d0
inc r11d
inc rdi
movsxd rax, r11d
cmp rax, r12
jb 0x14000b1e0
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x1a0]
call fcn.140017c30
mov rcx, rax
mov qword [rsp + 0x78], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x14000b3bc
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000b3a0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000b44f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000b400
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000b3f0
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x3d0], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000b477
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000b47a
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000b4a0
mov r14, qword [rbp + 0x3d0]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop word [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x398]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x399]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x396]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x398], r14
movzx eax, byte [rbp + r12 + 0x397]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x14000b4e0
and rdx, qword [rbp + 0x3c0]
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
shl rax, 7
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rdx
mov rdx, qword [rsp + 0x78]
mov qword [rbp + 0x148], rcx
lea rcx, [rbp + 0x128]
call fcn.140017a00
mov rcx, qword [rsp + 0x78]
call fcn.140001cd0
lea rcx, [rbp - 0x10]
call fcn.140001cd0
lea rcx, [rbp + 0x48]
call fcn.140001cd0
mov rdi, qword [rbp + 0x138]
lea rcx, [rbp + 0x128]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x14000b93b
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000b920
mov byte [0x1407065a6], bl
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000b9cf
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000b980
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000b970
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x3d0], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000b9f7
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000b9fa
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000ba20
mov r14, qword [rbp + 0x3d0]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop word [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x14000ba60
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
and rbx, rdx
shl rax, 7
mov rdx, qword [rbp + 0x148]
imul r8, r14, 0xff
not r8
sub r8, rax
xor r8, rbx
cmp r8, rdx
je 0x14000be57
mov rbx, qword [0x140706610]
lea rcx, [rbp + 0x440]
call fcn.1400047a0
mov rcx, rax
lea rdx, [rbp + 0x128]
mov rax, rbx
call qword [case.0x14001f545.0]
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0x48]
call fcn.140017c30
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x108]
call fcn.140017c30
mov r12, qword [rbp + 0x118]
lea rcx, [rbp + 0x108]
call fcn.140001d30
cmp byte [0x1407065a7], sil
lea r13, [0x140000000]
mov rdi, rax
jne 0x14000c26f
mov r14, rsi
movabs r15, 0x101010101010101
nop
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r15
mov qword [r14 + r13 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r15
mov qword [r14 + r13 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r15
mov qword [r14 + r13 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000beb0
lea rcx, [rbp + 0x388]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax + rax]
mov r15, qword [rbp + 0x388]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bfdb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c007
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c032
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c05e
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x14000bfc0
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c0b4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c0e0
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c10b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c137
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c163
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c18f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c1bb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c1e7
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x14000c212
mov r15, qword [rbp + 0x388]
jmp 0x14000c0a0
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c244
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14000c268
mov r15, qword [rbp + 0x388]
jmp 0x14000c230
mov byte [0x1407065a7], 1
test r12, r12
je 0x14000c3e4
mov r11d, esi
nop dword [rax + rax]
movzx ecx, byte [rdi]
lea r10, [0x140706e18]
mov r9d, esi
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000c2b0
inc r9d
inc r10
cmp r9d, 4
jb 0x14000c290
mov r9d, esi
lea r10, [0x140706fb0]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706e21]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000c320
inc r9d
inc r10
cmp r9d, 8
jb 0x14000c300
mov r9d, esi
lea r10, [0x140706f20]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000c390
inc r9d
inc r10
cmp r9d, 0xc
jb 0x14000c370
inc r11d
inc rdi
movsxd rax, r11d
cmp rax, r12
jb 0x14000c280
lea rcx, [rbp + 0x48]
call fcn.140001cd0
lea rdx, [rbp + 0xb60]
lea rcx, [rbp + 0x108]
call fcn.14001af00
lea rcx, [rbp + 0x128]
mov qword [rbp + 0x3d0], rax
call fcn.140004850
lea rcx, [rbp + 0x150]
call fcn.140004850
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0xd8]
call fcn.140001c90
xor eax, eax
cmp byte [0x1407065a4], al
mov qword [rbp + 0xf8], rax
jne 0x14000c458
lea rax, [fcn.140001c80]
mov byte [0x1407065a4], 1
mov qword [0x140706610], rax
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0xb8]
call fcn.140001c90
mov rcx, rax
mov qword [rbp + 0x3d8], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x14000c4dc
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000c4c0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000c56f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000c520
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000c510
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000c595
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000c598
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x390], rdi
movzx ecx, dil
mov qword [rbp + 0x3a0], rdi
movzx edx, dil
nop word [rax + rax]
xor dl, r15b
xor cl, r14b
inc eax
cmp eax, 8
jb 0x14000c5c0
mov r14, qword [rsp + 0x78]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop dword [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a0]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
mov r9, qword [rbp + 0x390]
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl r9, cl
xor r9, qword [rbp + 0x380]
mov qword [rbp + 0x380], r9
cmp r13d, 8
jb 0x14000c600
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x3d8]
and rbx, r9
shl rax, 7
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rbx
mov qword [rbp + 0xf8], rcx
lea rcx, [rbp + 0xd8]
call fcn.140017a00
mov rcx, qword [rbp + 0x3d8]
call fcn.140001cd0
cmp byte [0x1407065a5], sil
jne 0x14000ca0d
lea rax, [fcn.140001c80]
mov byte [0x1407065a5], 1
mov qword [0x140706610], rax
lea rdx, str.NtTerminateProcess
lea rcx, [rbp + 0x48]
call fcn.140001c90
mov rdx, rax
lea rcx, [rbp - 0x10]
call fcn.140017c30
mov r12, qword [rbp]
lea rcx, [rbp - 0x10]
call fcn.140001d30
cmp byte [0x1407065a7], sil
lea r13, [0x140000000]
mov rdi, rax
jne 0x14000ce1f
mov r14, rsi
movabs r15, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r15
mov qword [r14 + r13 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r15
mov qword [r14 + r13 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r15
mov qword [r14 + r13 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000ca60
lea rcx, [rbp + 0x388]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax + rax]
mov r15, qword [rbp + 0x388]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cb8b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cbb7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cbe2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cc0e
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x14000cb70
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cc64
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cc90
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ccbb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cce7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cd13
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cd3f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cd6b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cd97
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x14000cdc2
mov r15, qword [rbp + 0x388]
jmp 0x14000cc50
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cdf4
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14000ce18
mov r15, qword [rbp + 0x388]
jmp 0x14000cde0
mov byte [0x1407065a7], 1
test r12, r12
je 0x14000cf94
mov r11d, esi
nop dword [rax + rax]
movzx ecx, byte [rdi]
lea r10, [0x140706e18]
mov r9d, esi
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000ce60
inc r9d
inc r10
cmp r9d, 4
jb 0x14000ce40
mov r9d, esi
lea r10, [0x140706fb0]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706e21]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000ced0
inc r9d
inc r10
cmp r9d, 8
jb 0x14000ceb0
mov r9d, esi
lea r10, [0x140706f20]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000cf40
inc r9d
inc r10
cmp r9d, 0xc
jb 0x14000cf20
inc r11d
inc rdi
movsxd rax, r11d
cmp rax, r12
jb 0x14000ce30
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x1a0]
call fcn.140017c30
mov rcx, rax
mov qword [rbp + 0x3d8], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x14000d00c
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000cff0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000d09f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000d050
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000d040
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000d0c5
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000d0c8
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x390], rdi
movzx ecx, dil
mov qword [rbp + 0x3a0], rdi
movzx edx, dil
nop word [rax + rax]
xor dl, r15b
xor cl, r14b
inc eax
cmp eax, 8
jb 0x14000d0f0
mov r14, qword [rsp + 0x78]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop dword [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x398]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x399]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a0]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
mov r9, qword [rbp + 0x390]
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x396]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x398], r14
movzx eax, byte [rbp + r12 + 0x397]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl r9, cl
xor r9, qword [rbp + 0x380]
mov qword [rbp + 0x380], r9
cmp r13d, 8
jb 0x14000d130
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x3d8]
and rbx, r9
shl rax, 7
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rbx
mov qword [rbp + 0xf8], rcx
lea rcx, [rbp + 0xd8]
call fcn.140017a00
mov rcx, qword [rbp + 0x3d8]
call fcn.140001cd0
lea rcx, [rbp - 0x10]
call fcn.140001cd0
lea rcx, [rbp + 0x48]
call fcn.140001cd0
mov rdi, qword [rbp + 0xe8]
lea rcx, [rbp + 0xd8]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x14000d59c
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000d580
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000d62f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000d5e0
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000d5d0
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000d655
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000d658
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000d680
mov r14, qword [rsp + 0x78]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop dword [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x14000d6c0
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
and rbx, rdx
shl rax, 7
mov rdx, qword [rbp + 0xf8]
imul r8, r14, 0xff
not r8
sub r8, rax
xor r8, rbx
cmp r8, rdx
je 0x14000dab7
mov rbx, qword [0x140706610]
lea rcx, [rbp + 0x440]
call fcn.1400047a0
mov rcx, rax
lea rdx, [rbp + 0xd8]
mov rax, rbx
call qword [case.0x14001f545.0]
lea rdx, [rbp + 0xd8]
lea rcx, [rbp + 0x48]
call fcn.140017c30
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x88]
call fcn.140017c30
mov r12, qword [rbp + 0x98]
lea rcx, [rbp + 0x88]
call fcn.140001d30
cmp byte [0x1407065a7], sil
lea r13, [0x140000000]
mov rdi, rax
jne 0x14000decf
mov r14, rsi
movabs r15, 0x101010101010101
nop
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r15
mov qword [r14 + r13 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r15
mov qword [r14 + r13 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r15
mov qword [r14 + r13 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000db10
lea rcx, [rbp + 0x388]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax + rax]
mov r15, qword [rbp + 0x388]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dc3b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dc67
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dc92
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dcbe
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x14000dc20
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dd14
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dd40
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dd6b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dd97
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ddc3
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ddef
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000de1b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000de47
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x14000de72
mov r15, qword [rbp + 0x388]
jmp 0x14000dd00
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dea4
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14000dec8
mov r15, qword [rbp + 0x388]
jmp 0x14000de90
mov byte [0x1407065a7], 1
test r12, r12
je 0x14000e044
mov r11d, esi
nop dword [rax + rax]
movzx ecx, byte [rdi]
lea r10, [0x140706e18]
mov r9d, esi
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000df10
inc r9d
inc r10
cmp r9d, 4
jb 0x14000def0
mov r9d, esi
lea r10, [0x140706fb0]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706e21]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000df80
inc r9d
inc r10
cmp r9d, 8
jb 0x14000df60
mov r9d, esi
lea r10, [0x140706f20]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x14000dff0
inc r9d
inc r10
cmp r9d, 0xc
jb 0x14000dfd0
inc r11d
inc rdi
movsxd rax, r11d
cmp rax, r12
jb 0x14000dee0
lea rcx, [rbp + 0x48]
call fcn.140001cd0
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0x3e0]
call fcn.140001c90
xor eax, eax
cmp byte [0x1407065a4], al
mov qword [rbp + 0x400], rax
jne 0x14000e086
lea rax, [fcn.140001c80]
mov byte [0x1407065a4], 1
mov qword [0x140706610], rax
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0xb8]
call fcn.140001c90
mov rcx, rax
mov qword [rbp + 0x3d8], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], sil
mov r14, rax
jne 0x14000e0fc
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000e0e0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000e18f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000e140
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000e130
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000e1b5
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000e1b8
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000e1e0
mov r14, qword [rsp + 0x78]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop dword [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r10, cl
mov ecx, 8
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl r11, cl
xor qword [rbp + 0x380], r11
mov r11, rdi
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r11, cl
mov ecx, 8
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
shl rdx, cl
xor qword [rbp + 0x380], rdx
lea r8d, [r13 + 3]
test r8d, r8d
mov eax, r8d
mov r9, rdi
mov r10, rdi
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 5]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov r14d, 8
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38d]
xor byte [rbp + r12 + 0x385], al
lea eax, [r8*8]
test eax, eax
cmovle eax, r14d
lea r8d, [r13 + 6]
mov ecx, 0x40
lea r12, [r12 + 8]
sub ecx, eax
mov r10, rdi
shl rdx, cl
mov eax, r8d
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x390]
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 7]
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x14000e220
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
and rbx, rdx
shl rax, 7
mov rdx, qword [rbp + 0x3d8]
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rbx
mov qword [rbp + 0x400], rcx
lea rcx, [rbp + 0x3e0]
call fcn.140017a00
mov rcx, qword [rbp + 0x3d8]
call fcn.140001cd0
cmp byte [0x1407065a5], sil
jne 0x14000e629
lea rax, [fcn.140001c80]
mov byte [0x1407065a5], 1
mov qword [0x140706610], rax
lea rdx, [0x140523810]
lea rcx, [rbp + 0x48]
call fcn.140001c90
mov rdx, rax
lea rcx, [rbp - 0x10]
call fcn.140017c30
mov r12, qword [rbp]
lea rcx, [rbp - 0x10]
mov qword [rsp + 0x78], r12
call fcn.140001d30
cmp byte [0x1407065a7], sil
mov rdi, rax
jne 0x14000ea3f
mov r14, rsi
lea r15, [0x140000000]
movabs r13, 0x101010101010101
nop dword [rax + rax]
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r14 + r15 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r14 + r15 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r14 + r15 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000e680
lea rcx, [rbp + 0x388]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax + rax]
mov r15, qword [rbp + 0x388]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e7ab
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e7d7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e802
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e82e
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x14000e790
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e884
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e8b0
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e8db
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e907
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e933
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e95f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e98b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e9b7
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x14000e9e2
mov r15, qword [rbp + 0x388]
jmp 0x14000e870
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ea14
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14000ea38
mov r15, qword [rbp + 0x388]
jmp 0x14000ea00
mov byte [0x1407065a7], 1
test r12, r12
je 0x14000ed73
mov dword [rbp + 0x398], esi
nop
movzx edx, byte [rdi]
lea r13, [0x140706e18]
mov r12d, esi
nop dword [rax]
movzx ecx, byte [r13]
lea r15, [0x140000000]
shl rcx, 3
lea r8, [r15 + 0x706f31]
add r8, rcx
lea r10, [r15 + 0x706f30]
mov rax, rcx
lea r11, [r15 + 0x706f32]
sub rax, r8
lea rbx, [r15 + 0x706f33]
add r10, rax
lea r14, [r15 + 0x706f34]
mov rax, rcx
lea r15, [r15 + 0x706f35]
sub rax, r8
mov r9d, esi
add r11, rax
lea rsi, [0x140000000]
mov rax, rcx
sub rax, r8
add rbx, rax
mov rax, rcx
sub rax, r8
add r14, rax
mov rax, rcx
sub rax, r8
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706f36]
lea rcx, [rcx + 0x706f37]
add rax, rsi
add rcx, rsi
xor esi, esi
nop dword [rax]
nop word [rax + rax]
xor dl, byte [r10 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [r11 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x14000eb00
inc r12d
inc r13
cmp r12d, 4
jb 0x14000ea60
mov r12d, esi
lea r13, [0x140706fb0]
nop
movzx ecx, byte [r13]
lea r15, [0x140000000]
shl rcx, 3
lea r8, [r15 + 0x706e21]
add r8, rcx
lea r10, [r15 + 0x706e20]
mov rax, rcx
lea r11, [r15 + 0x706e22]
sub rax, r8
lea rbx, [r15 + 0x706e23]
add r10, rax
lea r14, [r15 + 0x706e24]
mov rax, rcx
lea r15, [r15 + 0x706e25]
sub rax, r8
mov r9d, esi
add r11, rax
lea rsi, [0x140000000]
mov rax, rcx
sub rax, r8
add rbx, rax
mov rax, rcx
sub rax, r8
add r14, rax
mov rax, rcx
sub rax, r8
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706e26]
lea rcx, [rcx + 0x706e27]
add rax, rsi
add rcx, rsi
xor esi, esi
nop dword [rax]
nop word [rax + rax]
xor dl, byte [r10 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [r11 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x14000ec00
inc r12d
inc r13
cmp r12d, 8
jb 0x14000eb60
mov r12d, esi
lea r13, [0x140706f20]
nop
movzx ecx, byte [r13]
lea r15, [0x140000000]
shl rcx, 3
lea r8, [r15 + 0x706f31]
add r8, rcx
lea r10, [r15 + 0x706f30]
mov rax, rcx
lea r11, [r15 + 0x706f32]
sub rax, r8
lea rbx, [r15 + 0x706f33]
add r10, rax
lea r14, [r15 + 0x706f34]
mov rax, rcx
lea r15, [r15 + 0x706f35]
sub rax, r8
mov r9d, esi
add r11, rax
lea rsi, [0x140000000]
mov rax, rcx
sub rax, r8
add rbx, rax
mov rax, rcx
sub rax, r8
add r14, rax
mov rax, rcx
sub rax, r8
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706f36]
lea rcx, [rcx + 0x706f37]
add rax, rsi
add rcx, rsi
xor esi, esi
nop dword [rax]
nop word [rax + rax]
xor dl, byte [r10 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [r11 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x14000ed00
inc r12d
inc r13
cmp r12d, 0xc
jb 0x14000ec60
mov ecx, dword [rbp + 0x398]
inc rdi
inc ecx
movsxd rax, ecx
mov dword [rbp + 0x398], ecx
cmp rax, qword [rsp + 0x78]
jb 0x14000ea50
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x1a0]
call fcn.140017c30
mov rcx, rax
mov qword [rbp + 0x3d8], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], 0
mov r14, rax
jne 0x14000edec
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop word [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000edd0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000ee7f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000ee30
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000ee20
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000eea5
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000eea8
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000eed0
mov r14, qword [rsp + 0x78]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop dword [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x398]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test sil, sil
cmove rdx, qword [rbp + 0x390]
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov r11, rdi
xor r10, r9
mov ecx, 8
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x399]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a0]
shl r11, cl
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test sil, sil
cmove rdx, qword [rbp + 0x390]
test eax, eax
lea r8d, [r13 + 3]
mov ecx, 8
cmovle eax, ecx
mov r9, rdi
mov ecx, 0x40
mov r10, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x39c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 5]
cmove rdx, qword [rbp + 0x390]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x398], rax
mov r14d, 8
movzx eax, byte [rbp + r12 + 0x39d]
mov ecx, 0x40
xor byte [rbp + r12 + 0x385], al
lea r12, [r12 + 8]
lea eax, [r8*8]
mov rdx, r11
test eax, eax
lea r8d, [r13 + 6]
mov r10, rdi
cmovle eax, r14d
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x398], rax
movzx eax, byte [rbp + r12 + 0x396]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 7]
cmove rdx, qword [rbp + 0x390]
test eax, eax
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x398], r14
movzx eax, byte [rbp + r12 + 0x397]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test sil, sil
cmovne rdx, qword [rbp + 0x390]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x14000ef10
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
mov rbx, qword [rbp + 0x3c0]
and rbx, rdx
shl rax, 7
mov rdx, qword [rbp + 0x3d8]
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rbx
mov qword [rbp + 0x400], rcx
lea rcx, [rbp + 0x3e0]
call fcn.140017a00
mov rcx, qword [rbp + 0x3d8]
call fcn.140001cd0
lea rcx, [rbp - 0x10]
call fcn.140001cd0
lea rcx, [rbp + 0x48]
call fcn.140001cd0
mov rdi, qword [rbp + 0x3f0]
lea rcx, [rbp + 0x3e0]
call fcn.140001d30
cmp byte [0x1407065a6], 0
mov r14, rax
jne 0x14000f3ac
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x14000f390
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x3c0], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14000f43f
mov r8, r14
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000f3f0
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rbp + 0x3c0], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x14000f3e0
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x14000f465
movzx r14d, byte [rdi + r14 - 1]
jmp 0x14000f468
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a0], rdi
movzx ecx, dil
mov qword [rbp + 0x390], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000f490
mov r14, qword [rsp + 0x78]
lea r15, [rdi*8]
mov byte [rbp + 0x3a0], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a0]
mov r12, rsi
mov byte [rbp + 0x390], dl
mov ebx, 1
nop dword [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test sil, sil
cmove rdx, qword [rbp + 0x390]
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov r11, rdi
xor r10, r9
mov ecx, 8
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a0]
shl r11, cl
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test sil, sil
cmove rdx, qword [rbp + 0x390]
test eax, eax
lea r8d, [r13 + 3]
mov ecx, 8
cmovle eax, ecx
mov r9, rdi
mov ecx, 0x40
mov r10, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a0]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 5]
cmove rdx, qword [rbp + 0x390]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
mov r14d, 8
movzx eax, byte [rbp + r12 + 0x38d]
mov ecx, 0x40
xor byte [rbp + r12 + 0x385], al
lea r12, [r12 + 8]
lea eax, [r8*8]
mov rdx, r11
test eax, eax
lea r8d, [r13 + 6]
mov r10, rdi
cmovle eax, r14d
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 7]
cmove rdx, qword [rbp + 0x390]
test eax, eax
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test sil, sil
cmovne rdx, qword [rbp + 0x390]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x14000f4d0
and rdx, qword [rbp + 0x3c0]
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
imul r8, r14, 0xff
shl rax, 7
not r8
sub r8, rax
xor r8, rdx
mov rdx, qword [rbp + 0x400]
cmp r8, rdx
je 0x14000f8f2
mov rbx, qword [0x140706610]
lea rcx, [rbp + 0x440]
call fcn.1400047a0
mov rcx, rax
lea rdx, [rbp + 0x3e0]
mov rax, rbx
call qword [case.0x14001f545.0]
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x48]
call fcn.140017c30
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x68]
call fcn.140017c30
mov r12, qword [rbp + 0x78]
lea rcx, [rbp + 0x68]
mov qword [rsp + 0x78], r12
call fcn.140001d30
cmp byte [0x1407065a7], 0
mov rdi, rax
jne 0x14000fd0f
mov r14, rsi
lea r15, [0x140000000]
movabs r13, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x3a8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3a8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x28]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r14 + r15 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x20]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r14 + r15 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3a8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r14 + r15 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000f950
lea rcx, [rbp + 0x388]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop dword [rax + rax]
mov r15, qword [rbp + 0x388]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fa7b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000faa7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fad2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fafe
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x14000fa60
lea rcx, [rbp + 0x10]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fb54
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fb80
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fbab
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fbd7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fc03
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fc2f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fc5b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x388]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fc87
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x14000fcb2
mov r15, qword [rbp + 0x388]
jmp 0x14000fb40
lea rcx, [rbp - 0x60]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x388], r15
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fce4
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14000fd08
mov r15, qword [rbp + 0x388]
jmp 0x14000fcd0
mov byte [0x1407065a7], 1
test r12, r12
je 0x140010015
mov dword [rbp + 0x398], esi
nop
movzx edx, byte [rdi]
lea r13, [0x140706e18]
mov r12d, esi
nop dword [rax]
movzx ecx, byte [r13]
lea r15, [0x140000000]
shl rcx, 3
lea r8, [r15 + 0x706f32]
add r8, rcx
lea r11, [r15 + 0x706f31]
mov rax, rcx
lea rbx, [r15 + 0x706f33]
sub rax, r8
lea r14, [r15 + 0x706f34]
add r11, rax
lea r10, [r15 + 0x706f30]
mov rax, rcx
lea r15, [r15 + 0x706f35]
sub rax, r8
add r10, rcx
add rbx, rax
mov r9d, esi
mov rax, rcx
lea rsi, [0x140000000]
sub rax, r8
add r14, rax
mov rax, rcx
sub rax, r8
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706f36]
lea rcx, [rcx + 0x706f37]
add rax, rsi
add rcx, rsi
xor esi, esi
nop dword [rax]
xor dl, byte [r10]
lea r10, [r10 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r11 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x14000fdc0
inc r12d
inc r13
cmp r12d, 4
jb 0x14000fd30
mov r12d, esi
lea r13, [0x140706fb0]
movzx eax, byte [r13]
lea r15, [0x140000000]
lea r8, [r15 + 0x706e22]
mov r9d, esi
lea rbx, [r15 + 0x706e23]
lea r14, [r15 + 0x706e24]
lea rcx, [rax*8]
add r8, rcx
lea r10, [r15 + 0x706e20]
mov rax, rcx
lea rsi, [0x140000000]
sub rax, r8
lea r11, [0x140706e21]
add rbx, rax
lea r15, [r15 + 0x706e25]
mov rax, rcx
add r10, rcx
sub rax, r8
sub r11, r8
add r14, rax
add r11, rcx
mov rax, rcx
sub rax, r8
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706e26]
lea rcx, [rcx + 0x706e27]
add rax, rsi
add rcx, rsi
xor esi, esi
nop
xor dl, byte [r10]
lea r10, [r10 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r11 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x14000feb0
inc r12d
inc r13
cmp r12d, 8
jb 0x14000fe20
mov r12d, esi
lea r13, [0x140706f20]
movzx eax, byte [r13]
lea r15, [0x140000000]
lea r8, [r15 + 0x706f32]
mov r9d, esi
lea rbx, [r15 + 0x706f33]
lea r14, [r15 + 0x706f34]
lea rcx, [rax*8]
add r8, rcx
lea r10, [r15 + 0x706f30]
mov rax, rcx
lea rsi, [0x140000000]
sub rax, r8
lea r11, [0x140706f31]
add rbx, rax
lea r15, [r15 + 0x706f35]
mov rax, rcx
add r10, rcx
sub rax, r8
sub r11, r8
add r14, rax
add r11, rcx
mov rax, rcx
sub rax, r8
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706f36]
lea rcx, [rcx + 0x706f37]
add rax, rsi
add rcx, rsi
xor esi, esi
nop
xor dl, byte [r10]
lea r10, [r10 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r11 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x14000ffa0
inc r12d
inc r13
cmp r12d, 0xc
jb 0x14000ff10
mov ecx, dword [rbp + 0x398]
inc rdi
inc ecx
movsxd rax, ecx
mov dword [rbp + 0x398], ecx
cmp rax, qword [rsp + 0x78]
jb 0x14000fd20
lea rcx, [rbp + 0x48]
call fcn.140001cd0
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x68]
call fcn.14001af00
lea rcx, [rbp + 0x3e0]
mov rbx, rax
call fcn.140004850
lea rcx, [rbp + 0xd8]
call fcn.140004850
mov rax, qword [rbp + 0x3d0]
lea rcx, [rbp + 0x4b0]
xorps xmm0, xmm0
mov qword [rbp + 0x498], rax
movups xmmword [rbp + 0x4b0], xmm0
mov qword [rbp + 0x4a0], rbx
movups xmmword [rbp + 0x4c0], xmm0
movups xmmword [rbp + 0x4d0], xmm0
movups xmmword [rbp + 0x4e0], xmm0
movups xmmword [rbp + 0x4f0], xmm0
movups xmmword [rbp + 0x500], xmm0
call fcn.1400061e0
lea rcx, [rbp + 0x4b0]
call fcn.140005140
mov dl, 1
lea rcx, [rbp + 0x4b0]
call fcn.1400053e0
lea rcx, [rbp + 0x4b0]
call fcn.140005c60
mov dl, 1
lea rcx, [rbp + 0x4b0]
call fcn.140005550
lea rcx, [rbp + 0x4b0]
call fcn.1400057c0
xor edx, edx
lea rcx, [rbp + 0x600]
mov r8d, 0x558
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x600]
call fcn.140003f60
mov eax, dword [0x140524a54]
lea rcx, [rbp + 0x3c8]
mov dword [rbp + 0x3c8], eax
movzx eax, byte [0x140524a58]
xor byte [rbp + 0x3c9], 0x38
xor al, 0x3b
xor byte [rbp + 0x3ca], 0x39
xor byte [rbp + 0x3cb], 0x3a
mov byte [rbp + 0x3cc], al
mov byte [rbp + 0x3c8], 0x36
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov ecx, dword [0x140530578]
mov r8d, esi
movsd xmm0, qword [0x140530570]
mov ebx, eax
mov edi, dword [0x140554008]
mov dword [rbp + 0x18], ecx
movzx ecx, word [0x14053057c]
mov word [rbp + 0x1c], cx
movzx ecx, byte [0x14053057e]
mov byte [rbp + 0x1e], cl
movsd qword [rbp + 0x10], xmm0
cmp edi, 2
jl 0x140010279
movdqa xmm2, xmmword [0x140534190]
mov r8d, 8
movdqa xmm4, xmmword [0x140534350]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x1405341b0]
movdqa xmm0, xmm2
mov eax, dword [0x1405342f0]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1405341f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140530570]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp + 0x10], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1405341f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140534260]
movd xmm1, dword [rbp + 0x14]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x14], xmm2
movsxd rax, r8d
lea r9, [rbp + 0x10]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0xf
jl 0x140010290
movzx edx, byte [rsp + 0x71]
lea rcx, [rbp - 0x10]
call fcn.140001d40
lea rax, [rbp + 0x10]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400102e0
lea rdx, [rbp + 0x10]
lea rcx, [rbp - 0x10]
call fcn.140001d60
lea rcx, [rbp - 0x10]
call fcn.140001d30
mov qword [rbp - 0x60], rax
lea rdx, [rbp - 0x60]
mov rax, qword [rbp]
lea rcx, [rbp + 0x600]
mov qword [rbp - 0x58], rax
movzx r8d, bx
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x60], xmm0
call fcn.1400017f0
lea rcx, [rbp - 0x10]
call fcn.140001cd0
movzx eax, byte [rbp + 0x604]
test al, al
jne 0x14001056a
mov eax, dword [0x1405306d8]
mov dword [rbp + 0x400], eax
movzx eax, word [0x1405306dc]
mov word [rbp + 0x404], ax
movups xmm0, xmmword [0x1405306b8]
movups xmm1, xmmword [0x1405306c8]
movups xmmword [rbp + 0x3e0], xmm0
movups xmmword [rbp + 0x3f0], xmm1
cmp edi, 2
jl 0x1400104b4
movdqa xmm0, xmmword [0x1405342f0]
lea rcx, [rbp + 0x3e0]
movdqa xmm5, xmmword [0x140534190]
movdqa xmm4, xmmword [0x140534350]
movdqa xmm6, xmmword [0x1405341f0]
movdqa xmmword [rbp - 0x60], xmm0
mov edx, dword [rbp - 0x60]
nop
movd xmm2, esi
lea eax, [rsi + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add esi, 8
pmuldq xmm1, xmm4
mov eax, esi
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
cmp esi, 0x20
jl 0x1400103b0
cmp eax, 0x26
jge 0x1400104fe
movsxd rax, esi
lea r8, [rbp + 0x3e0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
lea r8, [r8 + 1]
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, sil
inc esi
sub al, cl
add al, 0x37
xor byte [r8 - 1], al
cmp esi, 0x26
jl 0x1400104d0
lea r8, [rbp + 0x3e0]
lea rdx, [rbp + 0x600]
lea rcx, [rbp + 0x498]
call fcn.140016380
lea rcx, [rbp + 0x600]
call fcn.140016440
lea rcx, [rbp + 0x4b0]
call fcn.140006230
mov eax, 1
mov rcx, qword [rbp + 0xb80]
xor rcx, rsp
call fcn.1400e9c90
lea r11, [rsp + 0xca0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov ecx, 0x10000
call fcn.1400ea118
mov ecx, dword [0x140530e30]
mov r8d, esi
mov dword [rbp], ecx
movzx ecx, word [0x140530e34]
mov qword [rbp + 0x10], rax
movzx eax, byte [0x140530e36]
mov word [rbp + 4], cx
mov byte [rbp + 6], al
movups xmm0, xmmword [str.p_MiBOI_R]
movups xmmword [rbp - 0x10], xmm0
cmp edi, 2
jl 0x1400106e7
movdqa xmm0, xmmword [0x1405342f0]
lea rcx, [rbp - 0x10]
movdqa xmm5, xmmword [0x140534190]
movdqa xmm4, xmmword [0x140534350]
movdqa xmm6, xmmword [0x1405341f0]
movdqa xmmword [rbp - 0x60], xmm0
mov edx, dword [rbp - 0x60]
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 8], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
cmp r8d, 0x10
jl 0x1400105e0
cmp r8d, 0x17
jge 0x140010722
movsxd rax, r8d
lea r9, [rbp - 0x10]
add r9, rax
mov eax, 0x4d4873ed
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x17
jl 0x1400106f1
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0x440]
call fcn.140001c90
xor eax, eax
cmp byte [0x1407065a4], al
mov qword [rbp + 0x460], rax
jne 0x14001075b
lea rax, [fcn.140001c80]
mov byte [0x1407065a4], 1
mov qword [0x140706610], rax
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0xd8]
call fcn.140001c90
mov rcx, rax
mov qword [rbp + 0x30], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], 0
mov r14, rax
jne 0x1400107dc
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x1400107c0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x78], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14001086d
mov r8, r14
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x140010820
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rsp + 0x78], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x140010810
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x388], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x140010895
movzx r14d, byte [rdi + r14 - 1]
jmp 0x140010898
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a8], rdi
movzx ecx, dil
mov qword [rbp + 0x398], rdi
movzx edx, dil
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x1400108c0
mov r14, qword [rbp + 0x388]
lea r15, [rdi*8]
mov byte [rbp + 0x3a8], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a8]
mov r12, rsi
mov byte [rbp + 0x398], dl
mov ebx, 1
nop word [rax + rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test sil, sil
cmove rdx, qword [rbp + 0x398]
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov r11, rdi
xor r10, r9
mov ecx, 8
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a8]
shl r11, cl
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test sil, sil
cmove rdx, qword [rbp + 0x398]
test eax, eax
lea r8d, [r13 + 3]
mov ecx, 8
cmovle eax, ecx
mov r9, rdi
mov ecx, 0x40
mov r10, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a8]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 5]
cmove rdx, qword [rbp + 0x398]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
mov r14d, 8
movzx eax, byte [rbp + r12 + 0x38d]
mov ecx, 0x40
xor byte [rbp + r12 + 0x385], al
lea r12, [r12 + 8]
lea eax, [r8*8]
mov rdx, r11
test eax, eax
lea r8d, [r13 + 6]
mov r10, rdi
cmovle eax, r14d
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 7]
cmove rdx, qword [rbp + 0x398]
test eax, eax
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test sil, sil
cmovne rdx, qword [rbp + 0x398]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x140010900
and rdx, qword [rsp + 0x78]
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
shl rax, 7
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rdx
mov rdx, qword [rbp + 0x30]
mov qword [rbp + 0x460], rcx
lea rcx, [rbp + 0x440]
call fcn.140017a00
mov rcx, qword [rbp + 0x30]
call fcn.140001cd0
cmp byte [0x1407065a5], 0
jne 0x140010d2b
lea rax, [fcn.140001c80]
mov byte [0x1407065a5], bl
mov qword [0x140706610], rax
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0xb8]
call fcn.140001c90
mov rdx, rax
lea rcx, [rbp + 0x88]
call fcn.140017c30
mov r12, qword [rbp + 0x98]
lea rcx, [rbp + 0x88]
mov qword [rbp + 0x30], r12
call fcn.140001d30
cmp byte [0x1407065a7], 0
mov rdi, rax
jne 0x140011151
mov r14, rsi
lea r15, [0x140000000]
movabs r13, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x430]
call fcn.1400020f0
mov rbx, qword [rbp + 0x430]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x220]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r14 + r15 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x430], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x228]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r14 + r15 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x430], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r14 + r15 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x140010d90
lea rcx, [rbp + 0x3b8]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop
mov r15, qword [rbp + 0x3b8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140010ebb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140010ee7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140010f12
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140010f3e
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x140010ea0
lea rcx, [rbp + 0x230]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x3b8], r15
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140010f95
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140010fc1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140010fec
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140011018
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140011044
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140011070
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14001109c
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b8]
cqo
idiv rcx
mov byte [rbx + 5], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400110c8
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 8
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 6], dl
add rbx, 8
cmp r14d, 8
jae 0x1400110f3
mov r15, qword [rbp + 0x3b8]
jmp 0x140010f81
lea rcx, [rbp + 0x238]
call fcn.1400020f0
mov ebx, esi
lea r14, [0x140706f20]
mov r15, qword [rax]
mov qword [rbp + 0x3b8], r15
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140011126
dec eax
or eax, 0xfffffff0
inc eax
inc al
inc ebx
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r14], dl
inc r14
cmp ebx, 0xc
jae 0x14001114a
mov r15, qword [rbp + 0x3b8]
jmp 0x140011112
mov byte [0x1407065a7], 1
test r12, r12
je 0x1400113f0
mov dword [rbp + 0x398], esi
lea r15, [0x140000000]
nop word [rax + rax]
movzx edx, byte [rdi]
lea r13, [0x140706e18]
mov r12d, esi
jmp 0x140011187
lea r15, [0x140000000]
movzx ecx, byte [r13]
lea r8, [r15 + 0x706f32]
shl rcx, 3
lea r10, [r15 + 0x706f30]
add r8, rcx
mov rax, rcx
sub rax, r8
add r10, rcx
mov r9d, esi
lea rsi, [0x140000000]
lea r11, [rax + 0x706f31]
mov rax, rcx
sub rax, r8
add r11, r15
lea rbx, [rax + 0x706f33]
mov rax, rcx
sub rax, r8
add rbx, r15
lea r14, [rax + 0x706f34]
mov rax, rcx
sub rax, r8
add r14, r15
lea r15, [r15 + 0x706f35]
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706f36]
lea rcx, [rcx + 0x706f37]
add rax, rsi
add rcx, rsi
xor esi, esi
nop dword [rax]
xor dl, byte [r10]
lea r10, [r10 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r11 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x140011210
inc r12d
inc r13
cmp r12d, 4
jb 0x140011180
mov r12d, esi
lea r13, [0x140706fb0]
movzx ecx, byte [r13]
lea r15, [0x140000000]
shl rcx, 3
lea r8, [r15 + 0x706e22]
add r8, rcx
lea r11, [r15 + 0x706e21]
mov rax, rcx
lea rbx, [r15 + 0x706e23]
sub rax, r8
lea r14, [r15 + 0x706e24]
add r11, rax
lea r10, [r15 + 0x706e20]
mov rax, rcx
lea r15, [r15 + 0x706e25]
sub rax, r8
add r10, rcx
add rbx, rax
mov r9d, esi
mov rax, rcx
lea rsi, [0x140000000]
sub rax, r8
add r14, rax
mov rax, rcx
sub rax, r8
add r15, rax
mov rax, rcx
sub rax, r8
sub rcx, r8
lea rax, [rax + 0x706e26]
lea rcx, [rcx + 0x706e27]
add rax, rsi
add rcx, rsi
xor esi, esi
nop dword [rax]
xor dl, byte [r10]
lea r10, [r10 + 8]
mov byte [rdi], dl
add r9d, 8
xor dl, byte [r11 + r8]
lea r8, [r8 + 8]
mov byte [rdi], dl
xor dl, byte [r8 - 8]
mov byte [rdi], dl
xor dl, byte [rbx + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r14 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [r15 + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rax + r8 - 8]
mov byte [rdi], dl
xor dl, byte [rcx + r8 - 8]
mov byte [rdi], dl
cmp r9d, 8
jb 0x140011300
inc r12d
inc r13
cmp r12d, 8
jb 0x140011270
mov r9d, esi
lea r10, [0x140706f20]
lea r15, [0x140000000]
nop word [rax + rax]
movzx eax, byte [r10]
lea rcx, [r15 + 0x706f31]
mov r8d, esi
lea rcx, [rcx + rax*8]
nop dword [rax]
nop word [rax + rax]
xor dl, byte [rcx - 1]
lea rcx, [rcx + 8]
mov byte [rdi], dl
add r8d, 8
xor dl, byte [rcx - 8]
mov byte [rdi], dl
xor dl, byte [rcx - 7]
mov byte [rdi], dl
xor dl, byte [rcx - 6]
mov byte [rdi], dl
xor dl, byte [rcx - 5]
mov byte [rdi], dl
xor dl, byte [rcx - 4]
mov byte [rdi], dl
xor dl, byte [rcx - 3]
mov byte [rdi], dl
xor dl, byte [rcx - 2]
mov byte [rdi], dl
cmp r8d, 8
jb 0x140011390
inc r9d
inc r10
cmp r9d, 0xc
jb 0x140011370
mov ecx, dword [rbp + 0x398]
inc rdi
inc ecx
movsxd rax, ecx
mov dword [rbp + 0x398], ecx
cmp rax, qword [rbp + 0x30]
jb 0x140011170
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x3e0]
call fcn.140017c30
mov rcx, rax
mov qword [rbp - 0x60], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], 0
mov r14, rax
jne 0x14001146c
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop word [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x140011450
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x78], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x1400114fd
mov r8, r14
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x1400114b0
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rsp + 0x78], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x1400114a0
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp + 0x30], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x140011522
movzx r14d, byte [rdi + r14 - 1]
jmp 0x140011525
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a8], rdi
movzx ecx, dil
mov qword [rbp + 0x398], rdi
movzx edx, dil
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140011542
mov r14, qword [rbp + 0x30]
lea r15, [rdi*8]
mov byte [rbp + 0x3a8], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a8]
mov r12, rsi
mov byte [rbp + 0x398], dl
mov ebx, 1
nop dword [rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x388]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test sil, sil
cmove rdx, qword [rbp + 0x398]
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov r11, rdi
xor r10, r9
mov ecx, 8
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x389]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a8]
shl r11, cl
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38a]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test sil, sil
cmove rdx, qword [rbp + 0x398]
test eax, eax
lea r8d, [r13 + 3]
mov ecx, 8
cmovle eax, ecx
mov r9, rdi
mov ecx, 0x40
mov r10, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a8]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38b]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x38c]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 5]
cmove rdx, qword [rbp + 0x398]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x388], rax
mov r14d, 8
movzx eax, byte [rbp + r12 + 0x38d]
mov ecx, 0x40
xor byte [rbp + r12 + 0x385], al
lea r12, [r12 + 8]
lea eax, [r8*8]
mov rdx, r11
test eax, eax
lea r8d, [r13 + 6]
mov r10, rdi
cmovle eax, r14d
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x388], rax
movzx eax, byte [rbp + r12 + 0x386]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 7]
cmove rdx, qword [rbp + 0x398]
test eax, eax
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x388], r14
movzx eax, byte [rbp + r12 + 0x387]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test sil, sil
cmovne rdx, qword [rbp + 0x398]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x140011580
and rdx, qword [rsp + 0x78]
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
shl rax, 7
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rdx
mov rdx, qword [rbp - 0x60]
mov qword [rbp + 0x460], rcx
lea rcx, [rbp + 0x440]
call fcn.140017a00
mov rcx, qword [rbp - 0x60]
call fcn.140001cd0
lea rcx, [rbp + 0x88]
call fcn.140001cd0
lea rcx, [rbp + 0xb8]
call fcn.140001cd0
mov rdi, qword [rbp + 0x450]
lea rcx, [rbp + 0x440]
call fcn.140001d30
cmp byte [0x1407065a6], 0
mov r14, rax
jne 0x140011a0b
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x1400119f0
mov byte [0x1407065a6], bl
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x78], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x140011a9d
mov r8, r14
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x140011a50
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rsp + 0x78], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x140011a40
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp - 0x60], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x140011ac2
movzx r14d, byte [rdi + r14 - 1]
jmp 0x140011ac5
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a8], rdi
movzx ecx, dil
mov qword [rbp + 0x388], rdi
movzx edx, dil
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140011ae2
mov r14, qword [rbp - 0x60]
lea r15, [rdi*8]
mov byte [rbp + 0x3a8], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a8]
mov r12, rsi
mov byte [rbp + 0x388], dl
mov ebx, 1
nop dword [rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x3b8], rax
movzx eax, byte [rbp + r12 + 0x3b8]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test sil, sil
cmove rdx, qword [rbp + 0x388]
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov r11, rdi
xor r10, r9
mov ecx, 8
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x3b8], rax
movzx eax, byte [rbp + r12 + 0x3b9]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a8]
shl r11, cl
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x3b8], rax
movzx eax, byte [rbp + r12 + 0x3ba]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test sil, sil
cmove rdx, qword [rbp + 0x388]
test eax, eax
lea r8d, [r13 + 3]
mov ecx, 8
cmovle eax, ecx
mov r9, rdi
mov ecx, 0x40
mov r10, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a8]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x3b8], rax
movzx eax, byte [rbp + r12 + 0x3bb]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x3b8], rax
movzx eax, byte [rbp + r12 + 0x3bc]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 5]
cmove rdx, qword [rbp + 0x388]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x3b8], rax
mov r14d, 8
movzx eax, byte [rbp + r12 + 0x3bd]
mov ecx, 0x40
xor byte [rbp + r12 + 0x385], al
lea r12, [r12 + 8]
lea eax, [r8*8]
mov rdx, r11
test eax, eax
lea r8d, [r13 + 6]
mov r10, rdi
cmovle eax, r14d
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x3b8], rax
movzx eax, byte [rbp + r12 + 0x3b6]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 7]
cmove rdx, qword [rbp + 0x388]
test eax, eax
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x3b8], r14
movzx eax, byte [rbp + r12 + 0x3b7]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test sil, sil
cmovne rdx, qword [rbp + 0x388]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x140011b20
and rdx, qword [rsp + 0x78]
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
imul r8, r14, 0xff
shl rax, 7
not r8
sub r8, rax
xor r8, rdx
mov rdx, qword [rbp + 0x460]
cmp r8, rdx
je 0x140011f40
mov rbx, qword [0x140706610]
lea rcx, [rbp + 0x3e0]
call fcn.1400047a0
mov rcx, rax
lea rdx, [rbp + 0x440]
mov rax, rbx
call qword [case.0x14001f545.0]
lea rdx, [rbp + 0x440]
lea rcx, [rbp + 0x88]
call fcn.140017c30
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x1a0]
call fcn.140017c30
mov r12, qword [rbp + 0x1b0]
lea rcx, [rbp + 0x1a0]
call fcn.140001d30
cmp byte [0x1407065a7], 0
lea r13, [0x140000000]
mov rdi, rax
jne 0x140012361
mov r14, rsi
movabs r15, 0x101010101010101
nop dword [rax]
lea rcx, [rbp + 0x428]
call fcn.1400020f0
mov rbx, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x200]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r15
mov qword [r14 + r13 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x428], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x1c0]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r15
mov qword [r14 + r13 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x428], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r15
mov qword [r14 + r13 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x140011fa0
lea rcx, [rbp + 0x3b0]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop
mov r15, qword [rbp + 0x3b0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400120cb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400120f7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140012122
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14001214e
dec eax
or eax, 0xfffffff0
inc eax
inc al
add r14d, 4
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add rbx, 4
cmp r14d, 4
jb 0x1400120b0
lea rcx, [rbp + 0x1c8]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706fb1]
mov r15, qword [rax]
mov qword [rbp + 0x3b0], r15
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400121a5
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx - 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400121d1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400121fc
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx + 1], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140012228
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx + 2], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140012254
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx + 3], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140012280
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
mov r15, qword [rbp + 0x3b0]
cqo
idiv rcx
mov byte [rbx + 4], dl
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400122ac
test r12, r12
je 0x1400124d4
mov r11d, esi
nop dword [rax]
movzx ecx, byte [rdi]
lea r10, [0x140706e18]
mov r9d, esi
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x1400123a0
inc r9d
inc r10
cmp r9d, 4
jb 0x140012380
mov r9d, esi
lea r10, [0x140706fb0]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706e21]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x140012410
inc r9d
inc r10
cmp r9d, 8
jb 0x1400123f0
mov r9d, esi
lea r10, [0x140706f20]
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x140012480
inc r9d
inc r10
cmp r9d, 0xc
jb 0x140012460
inc r11d
inc rdi
movsxd rax, r11d
cmp rax, r12
jb 0x140012370
lea rcx, [rbp + 0x88]
call fcn.140001cd0
cmp dword [0x140554008], 2
mov r8d, esi
mov eax, dword [0x140530870]
movsd xmm0, qword [str._KTP]
mov dword [rbp + 0x70], eax
movzx eax, byte [0x140530874]
mov byte [rbp + 0x74], al
movsd qword [rbp + 0x68], xmm0
jl 0x14001260f
movdqa xmm2, xmmword [0x140534190]
mov r8d, 8
movdqa xmm4, xmmword [0x140534350]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x1405341b0]
movdqa xmm0, xmm2
mov eax, dword [0x1405342f0]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1405341f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x140534260]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str._KTP]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp + 0x68], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1405341f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140534260]
movd xmm1, dword [rbp + 0x6c]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x6c], xmm2
movsxd rax, r8d
lea r9, [rbp + 0x68]
add r9, rax
nop dword [rax]
mov eax, 0x4d4873ed
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0xd
jl 0x140012620
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0x178]
call fcn.140001c90
xor eax, eax
cmp byte [0x1407065a4], al
mov qword [rbp + 0x198], rax
jne 0x14001268a
lea rax, [fcn.140001c80]
mov byte [0x1407065a4], 1
mov qword [0x140706610], rax
lea rdx, [0x1405230e8]
lea rcx, [rbp + 0x3e0]
call fcn.140001c90
mov rcx, rax
mov qword [rbp + 0x30], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], 0
mov r14, rax
jne 0x14001270c
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x140706620]
lea rax, [0x140706e18]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, r8
sub r8, r10
xor rcx, r9
mov qword [rdx], rcx
add rdx, 8
cmp rdx, rax
jl 0x1400126f0
mov byte [0x1407065a6], 1
lea r10, [0x140706620]
movabs rbx, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x78], rbx
mov r9d, esi
mov qword [rbp + 0x380], rbx
test rdi, rdi
je 0x14001279d
mov r8, r14
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r8]
lea rax, [rbp + 0x381]
mov edx, esi
nop dword [rax]
xor byte [rax - 1], cl
add edx, 8
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
lea rax, [rax + 8]
cmp edx, 8
jb 0x140012750
mov rbx, qword [rbp + 0x380]
inc r9d
not cl
inc r8
movzx eax, cl
xor rbx, qword [r10 + rax*8]
movsxd rax, r9d
mov qword [rsp + 0x78], rbx
mov qword [rbp + 0x380], rbx
cmp rax, rdi
jb 0x140012740
movzx r15d, byte [r14]
movabs rcx, 0xaebdccdb0a192837
mov qword [rbp - 0x60], rcx
mov byte [rsp + 0x71], r15b
cmp rdi, 1
jbe 0x1400127c2
movzx r14d, byte [rdi + r14 - 1]
jmp 0x1400127c5
mov r14b, 0xae
mov byte [rsp + 0x70], r14b
mov eax, esi
mov qword [rbp + 0x3a8], rdi
movzx ecx, dil
mov qword [rbp + 0x3b8], rdi
movzx edx, dil
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x1400127e2
mov r14, qword [rbp - 0x60]
lea r15, [rdi*8]
mov byte [rbp + 0x3a8], cl
mov r13d, esi
mov r11, qword [rbp + 0x3a8]
mov r12, rsi
mov byte [rbp + 0x3b8], dl
mov ebx, 1
nop dword [rax]
test r13d, r13d
lea r8d, [r13*8]
mov eax, r13d
mov r9, rdi
cmove eax, ebx
mov r10, rdi
shl eax, 3
xor edx, edx
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r9, cl
mov ecx, 8
xor r9, r14
movabs r14, 0xaebdccdb0a192837
mov rax, r9
xor rax, r14
mov qword [rbp + 0x3b0], rax
movzx eax, byte [rbp + r12 + 0x3b0]
xor byte [rbp + r12 + 0x380], al
mov eax, r8d
test sil, sil
cmove rdx, qword [rbp + 0x3b8]
test r8d, r8d
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
lea eax, [r13 + 1]
shl rdx, cl
xor qword [rbp + 0x380], rdx
test eax, eax
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov r11, rdi
xor r10, r9
mov ecx, 8
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x3b0], rax
movzx eax, byte [rbp + r12 + 0x3b1]
xor byte [rbp + r12 + 0x381], al
lea eax, [r8 + 8]
test eax, eax
lea r8d, [r13 + 2]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, qword [rbp + 0x3a8]
shl r11, cl
xor r11, r10
xor r11, r14
mov rax, r11
xor rax, r14
mov qword [rbp + 0x3b0], rax
movzx eax, byte [rbp + r12 + 0x3b2]
xor byte [rbp + r12 + 0x382], al
lea eax, [r8*8]
test sil, sil
cmove rdx, qword [rbp + 0x3b8]
test eax, eax
lea r8d, [r13 + 3]
mov ecx, 8
cmovle eax, ecx
mov r9, rdi
mov ecx, 0x40
mov r10, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
mov ecx, 8
xor r9, r11
mov r11, qword [rbp + 0x3a8]
xor r9, r14
mov rdx, r11
mov rax, r9
xor rax, r14
mov qword [rbp + 0x3b0], rax
movzx eax, byte [rbp + r12 + 0x3b3]
xor byte [rbp + r12 + 0x383], al
lea eax, [r8*8]
test eax, eax
lea r8d, [r13 + 4]
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
mov ecx, 8
xor r10, r9
mov r9, rdi
xor r10, r14
mov rax, r10
xor rax, r14
mov qword [rbp + 0x3b0], rax
movzx eax, byte [rbp + r12 + 0x3b4]
xor byte [rbp + r12 + 0x384], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 5]
cmove rdx, qword [rbp + 0x3b8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
shl r9, cl
xor r9, r10
xor r9, r14
mov rax, r9
xor rax, r14
mov qword [rbp + 0x3b0], rax
mov r14d, 8
movzx eax, byte [rbp + r12 + 0x3b5]
mov ecx, 0x40
xor byte [rbp + r12 + 0x385], al
lea r12, [r12 + 8]
lea eax, [r8*8]
mov rdx, r11
test eax, eax
lea r8d, [r13 + 6]
mov r10, rdi
cmovle eax, r14d
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r10, cl
movabs rcx, 0xaebdccdb0a192837
xor r10, r9
xor r10, rcx
mov rax, r10
xor rax, rcx
mov ecx, 0x40
mov qword [rbp + 0x3b0], rax
movzx eax, byte [rbp + r12 + 0x3ae]
xor byte [rbp + r12 + 0x37e], al
lea eax, [r8*8]
test sil, sil
lea r8d, [r13 + 7]
cmove rdx, qword [rbp + 0x3b8]
test eax, eax
cmovle eax, r14d
mov r14, rdi
sub ecx, eax
mov eax, r8d
shl rdx, cl
xor qword [rbp + 0x380], rdx
test r8d, r8d
cmove eax, ebx
xor edx, edx
shl eax, 3
movsxd rcx, eax
mov rax, r15
div rcx
mov rcx, rdx
mov rdx, r11
shl r14, cl
mov ecx, 8
xor r14, r10
mov qword [rbp + 0x3b0], r14
movzx eax, byte [rbp + r12 + 0x3af]
xor byte [rbp + r12 + 0x37f], al
lea eax, [r8*8]
test sil, sil
cmovne rdx, qword [rbp + 0x3b8]
test eax, eax
cmovle eax, ecx
mov ecx, 0x40
sub ecx, eax
add r13d, 8
shl rdx, cl
xor rdx, qword [rbp + 0x380]
mov qword [rbp + 0x380], rdx
cmp r13d, 8
jb 0x140012820
and rdx, qword [rsp + 0x78]
movzx r14d, byte [rsp + 0x70]
movzx eax, byte [rsp + 0x71]
shl rax, 7
imul rcx, r14, 0xff
not rcx
sub rcx, rax
xor rcx, rdx
mov rdx, qword [rbp + 0x30]
mov qword [rbp + 0x198], rcx
lea rcx, [rbp + 0x178]
call fcn.140017a00
mov rcx, qword [rbp + 0x30]
call fcn.140001cd0
cmp byte [0x1407065a5], 0
jne 0x140012c4b
lea rax, [fcn.140001c80]
mov byte [0x1407065a5], bl
mov qword [0x140706610], rax
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0xb8]
call fcn.140001c90
mov rdx, rax
lea rcx, [rbp + 0x88]
call fcn.140017c30
mov r12, qword [rbp + 0x98]
lea rcx, [rbp + 0x88]
call fcn.140001d30
cmp byte [0x1407065a7], 0
lea r13, [0x140000000]
mov rdi, rax
jne 0x140013061
mov r14, rsi
movabs r15, 0x101010101010101
lea rcx, [rbp + 0x3d8]
call fcn.1400020f0
mov rbx, qword [rbp + 0x3d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x1d8]
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r15
mov qword [r14 + r13 + 0x706f30], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3d8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
lea rcx, [rbp + 0x1e0]
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r15
mov qword [r14 + r13 + 0x706e20], rax
call fcn.1400020f0
mov rbx, qword [rax]
mov qword [rbp + 0x3d8], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r15
mov qword [r14 + r13 + 0x706ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x140012ca1
lea rcx, [rbp + 0x3a0]
call fcn.1400020f0
mov r14d, esi
lea rbx, [0x140706e19]
nop
mov r15, qword [rbp + 0x3a0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140012dcb
test r12, r12
je 0x1400131d4
mov r11d, esi
nop dword [rax]
movzx ecx, byte [rdi]
lea r10, [0x140706e18]
mov r9d, esi
nop dword [rax]
movzx eax, byte [r10]
mov r8d, esi
lea rdx, [rax*8 + 0x706f31]
add rdx, r13
nop dword [rax]
nop word [rax + rax]
xor cl, byte [rdx - 1]
lea rdx, [rdx + 8]
mov byte [rdi], cl
add r8d, 8
xor cl, byte [rdx - 8]
mov byte [rdi], cl
xor cl, byte [rdx - 7]
mov byte [rdi], cl
xor cl, byte [rdx - 6]
mov byte [rdi], cl
xor cl, byte [rdx - 5]
mov byte [rdi], cl
xor cl, byte [rdx - 4]
mov byte [rdi], cl
xor cl, byte [rdx - 3]
mov byte [rdi], cl
xor cl, byte [rdx - 2]
mov byte [rdi], cl
cmp r8d, 8
jb 0x1400130a0
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0xd8]
call fcn.140017c30
mov rcx, rax
mov qword [rbp + 0x30], rax
mov rdi, qword [rax + 0x10]
call fcn.140001d30
cmp byte [0x1407065a6], 0
mov r14, rax
jne 0x14001324c