Function at 0x140006890
Capabilities:
Encode data using xor

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
sub rsp, 0xcc0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1405eeab8]
xor rax, rsp
mov qword [rbp + 0xc40], rax
xor esi, esi
movabs rax, 0x88c70f1378c85715
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x150], rax
movabs rcx, 0x9782d4e1e9745ab4
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x158], rax
movabs rax, 0x88c76e781aa93b77
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbb0], rax
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbb8], rax
movdqa xmm0, xmmword [rbp + 0x150]
xorps xmm0, xmmword [rbp + 0xbb0]
movdqa xmmword [rbp + 0x150], xmm0
lea rax, [rbp + 0x110]
mov qword [rbp + 0x30], rax
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x110]
call fcn.140010f60
nop
xor eax, eax
mov qword [rbp + 0x130], rax
lea rax, [0x140002eb0]
cmp byte [0x1405f2603], sil
jne 0x14000698f
mov qword [0x1405f2610], rax
mov byte [0x1405f2603], 1
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x460]
call fcn.140010f60
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r15, rax
movabs rax, 0xfeeddccbbaa99887
lea r9, [0x1405f2620]
lea rdi, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
cmp byte [0x1405f2605], 0
jne 0x140006a0c
mov rdx, rax
mov rcx, r9
nop dword [rax]
mov rax, rdx
xor rax, r8
mov qword [rcx], rax
sub rdx, r10
add rcx, 8
cmp rcx, rdi
jl 0x1400069f0
mov byte [0x1405f2605], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x60], rax
mov r11, rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x590], rax
mov r8d, esi
test rbx, rbx
je 0x140006a9c
mov rdi, r15
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x591]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140006a50
not cl
movzx eax, cl
mov r11, qword [rbp + 0x590]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x590], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140006a40
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r15]
mov byte [rbp + 1], r12b
cmp rbx, 1
jbe 0x140006abc
movzx r15d, byte [r15 + rbx - 1]
jmp 0x140006abf
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x5b0], rbx
mov qword [rbp + 0x5a8], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor cl, r12b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140006ae0
mov byte [rbp + 0x5b0], cl
mov byte [rbp + 0x5a8], dl
mov r13d, esi
mov r14, rsi
mov r11d, 1
lea r12d, [r11 + 7]
lea rsi, [rbx*8]
mov r15, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x5c0], rax
movzx eax, byte [rbp + r14 + 0x5c0]
xor byte [rbp + r14 + 0x590], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r12d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x590], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x5c0], r9
movzx eax, byte [rbp + r14 + 0x5c1]
xor byte [rbp + r14 + 0x591], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x5b0]
shl rax, cl
xor qword [rbp + 0x590], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x5c0], r8
movzx eax, byte [rbp + r14 + 0x5c2]
xor byte [rbp + r14 + 0x592], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x590], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x5c0], r9
movzx eax, byte [rbp + r14 + 0x5c3]
xor byte [rbp + r14 + 0x593], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5b0]
shl rax, cl
xor qword [rbp + 0x590], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x5c0], r8
movzx eax, byte [rbp + r14 + 0x5c4]
xor byte [rbp + r14 + 0x594], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x590], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x5c0], r9
movzx eax, byte [rbp + r14 + 0x5c5]
xor byte [rbp + r14 + 0x595], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5b0]
shl rax, cl
xor qword [rbp + 0x590], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x5c0], r8
movzx eax, byte [rbp + r14 + 0x5c6]
xor byte [rbp + r14 + 0x596], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x590], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x5c0], r9
movzx eax, byte [rbp + r14 + 0x5c7]
xor byte [rbp + r14 + 0x597], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x5b0]
shl rdx, cl
xor rdx, qword [rbp + 0x590]
mov qword [rbp + 0x590], rdx
add r13d, r12d
lea r14, [r14 + 8]
cmp r13d, r12d
jb 0x140006b20
movzx r15d, byte [rbp]
imul rax, r15, 0xff
not rax
movzx ecx, byte [rbp + 1]
shl rcx, 7
sub rax, rcx
and rdx, qword [rbp + 0x18]
xor rax, rdx
mov qword [rbp + 0x590], rax
mov qword [rbp + 0x130], rax
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x110]
call fcn.140010f30
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
cmp byte [0x1405f2604], 0
mov esi, 0
jne 0x140006ec1
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2604], 1
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x420]
call fcn.140010f60
nop
mov rdx, rax
lea rcx, [rbp + 0x2e0]
call fcn.140011080
mov r12, qword [rbp + 0x2f0]
mov qword [rbp + 8], r12
lea rcx, [rbp + 0x2e0]
call fcn.1400119f0
mov rbx, rax
movabs r13, 0x101010101010101
lea r15, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x1400072f8
mov r14, rsi
nop
lea rcx, [rbp + 0x608]
call fcn.140001700
mov rdi, qword [rbp + 0x608]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0x380]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x608], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0x388]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x608], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x140006f20
lea rcx, [rbp + 0x5e0]
call fcn.140001700
mov r14d, esi
lea rdi, [0x1405f2619]
nop
mov r15, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000704b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r15, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007077
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi], dl
mov r15, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400070a2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r15, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400070ce
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 2], dl
add r14d, 4
add rdi, 4
cmp r14d, 4
jb 0x140007030
lea rcx, [rbp + 0x390]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5e0], rdi
mov r15d, esi
lea r14, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007125
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 - 1], dl
mov rdi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007152
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
mov rdi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000717e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 1], dl
mov rdi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400071ab
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 2], dl
mov rdi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400071d8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 3], dl
mov rdi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007205
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 4], dl
mov rdi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007232
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 5], dl
mov rdi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000725f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 6], dl
add r15d, 8
add r14, 8
cmp r15d, 8
jae 0x14000728b
mov rdi, qword [rbp + 0x5e0]
jmp 0x140007111
lea rcx, [rbp + 0x328]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5e0], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400072c4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x1400072ea
mov rdi, qword [rbp + 0x5e0]
jmp 0x1400072b0
mov byte [0x1405f2606], 1
lea r15, [0x140000000]
test r12, r12
je 0x1400075d5
mov dword [rbp + 0x38], esi
nop dword [rax]
nop dword [rax + rax]
mov r13d, esi
movzx edx, byte [rbx]
lea rax, [0x1405f2618]
mov qword [rbp + 0x18], rax
mov r8d, esi
movzx eax, byte [rax]
lea rcx, [rax*8]
lea rdi, [rcx + 0x5f2f32]
add rdi, r15
lea r9, [r15 + 0x5f2f30]
add r9, rcx
lea r10, [0x1405f2f31]
sub r10, rdi
add r10, rcx
lea r11, [0x1405f2f33]
sub r11, rdi
add r11, rcx
lea r14, [0x1405f2f34]
sub r14, rdi
add r14, rcx
lea r15, [0x1405f2f35]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f2f36]
sub r12, rdi
add r12, rcx
lea rax, [0x1405f2f37]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r14 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x140007391
inc r13d
mov rax, qword [rbp + 0x18]
inc rax
mov qword [rbp + 0x18], rax
cmp r13d, 4
lea r15, [0x140000000]
jb 0x140007321
mov r13d, esi
lea rax, [0x1405f2e18]
mov qword [rbp + 0x18], rax
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rax]
shl rcx, 3
lea r10, [0x140000000]
lea rdi, [r10 + 0x5f2e22]
add rdi, rcx
lea r9, [r10 + 0x5f2e20]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [r10 + 0x5f2e21]
add r10, rax
lea r11, [0x1405f2e23]
sub r11, rdi
add r11, rcx
lea r14, [0x1405f2e24]
sub r14, rdi
add r14, rcx
lea r15, [0x1405f2e25]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f2e26]
sub r12, rdi
add r12, rcx
lea rax, [0x1405f2e27]
sub rax, rdi
add rax, rcx
nop word [rax + rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [rdi + r10]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r11]
mov byte [rbx], dl
xor dl, byte [rdi + r14]
mov byte [rbx], dl
xor dl, byte [rdi + r15]
mov byte [rbx], dl
xor dl, byte [rdi + r12]
mov byte [rbx], dl
xor dl, byte [rdi + rax]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x140007480
inc r13d
mov rax, qword [rbp + 0x18]
inc rax
mov qword [rbp + 0x18], rax
cmp r13d, 8
jb 0x140007400
mov r13d, esi
lea rax, [0x1405f2f20]
mov qword [rbp + 0x18], rax
mov r8d, esi
movzx ecx, byte [rax]
shl rcx, 3
lea r10, [0x140000000]
lea rdi, [r10 + 0x5f2f32]
add rdi, rcx
lea r9, [r10 + 0x5f2f30]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [r10 + 0x5f2f31]
add r10, rax
lea r11, [0x1405f2f33]
sub r11, rdi
add r11, rcx
lea r14, [0x1405f2f34]
sub r14, rdi
add r14, rcx
lea r15, [0x1405f2f35]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f2f36]
sub r12, rdi
add r12, rcx
lea rax, [0x1405f2f37]
sub rax, rdi
add rax, rcx
nop word [rax + rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r14 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x140007560
inc r13d
mov rax, qword [rbp + 0x18]
inc rax
mov qword [rbp + 0x18], rax
cmp r13d, 0xc
jb 0x1400074e4
mov ecx, dword [rbp + 0x38]
inc ecx
mov dword [rbp + 0x38], ecx
inc rbx
movsxd rax, ecx
cmp rax, qword [rbp + 8]
lea r15, [0x140000000]
jb 0x140007310
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x440]
call fcn.140011080
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
lea r9, [0x1405f2620]
cmp byte [0x1405f2605], 0
jne 0x14000764c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
nop
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r10
add rdx, 8
cmp rdx, rax
jl 0x140007630
mov byte [0x1405f2605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x570], r11
mov r8d, esi
test rbx, rbx
je 0x1400076cc
mov rdi, r14
nop dword [rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x571]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140007680
not cl
movzx eax, cl
mov r11, qword [rbp + 0x570]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x570], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140007670
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x1400076ec
movzx r14d, byte [r14 + rbx - 1]
jmp 0x1400076ef
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x568], rbx
mov qword [rbp + 0x5a8], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor dl, r15b
xor cl, r14b
inc eax
cmp eax, 8
jb 0x140007710
mov byte [rbp + 0x5a8], cl
mov byte [rbp + 0x568], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x5b0], rax
movzx eax, byte [rbp + r12 + 0x5b0]
xor byte [rbp + r12 + 0x570], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x570], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x5b0], r9
movzx eax, byte [rbp + r12 + 0x5b1]
xor byte [rbp + r12 + 0x571], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x568]
shl rax, cl
xor qword [rbp + 0x570], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5b0], r8
movzx eax, byte [rbp + r12 + 0x5b2]
xor byte [rbp + r12 + 0x572], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x570], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5b0], r9
movzx eax, byte [rbp + r12 + 0x5b3]
xor byte [rbp + r12 + 0x573], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x568]
shl rax, cl
xor qword [rbp + 0x570], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5b0], r8
movzx eax, byte [rbp + r12 + 0x5b4]
xor byte [rbp + r12 + 0x574], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x570], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5b0], r9
movzx eax, byte [rbp + r12 + 0x5b5]
xor byte [rbp + r12 + 0x575], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x568]
shl rax, cl
xor qword [rbp + 0x570], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5b0], r8
movzx eax, byte [rbp + r12 + 0x5b6]
xor byte [rbp + r12 + 0x576], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a8]
shl rax, cl
xor qword [rbp + 0x570], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5b0], r9
movzx eax, byte [rbp + r12 + 0x5b7]
xor byte [rbp + r12 + 0x577], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x568]
shl rdx, cl
xor rdx, qword [rbp + 0x570]
mov qword [rbp + 0x570], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x140007750
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
mov r11, qword [rbp + 0x18]
and r11, rdx
xor rcx, r11
mov qword [rbp + 0x570], rcx
mov qword [rbp + 0x130], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x110]
call fcn.140010f30
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
lea rcx, [rbp + 0x2e0]
call fcn.140002d30
nop
lea rcx, [rbp + 0x420]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x120]
lea rcx, [rbp + 0x110]
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
mov esi, 0
jne 0x140007b5c
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x140007b40
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x568], r11
mov r8d, esi
test rbx, rbx
je 0x140007bec
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x569]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140007ba0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x568]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x568], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140007b90
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x140007c0c
movzx r14d, byte [r14 + rbx - 1]
jmp 0x140007c0f
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x38], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140007c23
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x38], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x5a8], rax
movzx eax, byte [rbp + r12 + 0x5a8]
xor byte [rbp + r12 + 0x568], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x38]
shl rax, cl
xor qword [rbp + 0x568], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x5a8], r9
movzx eax, byte [rbp + r12 + 0x5a9]
xor byte [rbp + r12 + 0x569], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x568], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5a8], r8
movzx eax, byte [rbp + r12 + 0x5aa]
xor byte [rbp + r12 + 0x56a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x38]
shl rax, cl
xor qword [rbp + 0x568], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5a8], r9
movzx eax, byte [rbp + r12 + 0x5ab]
xor byte [rbp + r12 + 0x56b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x568], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5a8], r8
movzx eax, byte [rbp + r12 + 0x5ac]
xor byte [rbp + r12 + 0x56c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x38]
shl rax, cl
xor qword [rbp + 0x568], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5a8], r9
movzx eax, byte [rbp + r12 + 0x5ad]
xor byte [rbp + r12 + 0x56d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x568], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5a8], r8
movzx eax, byte [rbp + r12 + 0x5ae]
xor byte [rbp + r12 + 0x56e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x38]
shl rax, cl
xor qword [rbp + 0x568], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5a8], r9
movzx eax, byte [rbp + r12 + 0x5af]
xor byte [rbp + r12 + 0x56f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x568]
mov qword [rbp + 0x568], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x140007c60
movzx r14d, byte [rbp]
imul r8, r14, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
mov r11, qword [rbp + 0x18]
and r11, rdx
xor r8, r11
mov qword [rbp + 0x568], r8
mov rdx, qword [rbp + 0x130]
cmp r8, rdx
mov esi, 0
je 0x140007fd8
mov rdi, qword [0x1405f2610]
lea rcx, [rbp + 0x4d8]
call fcn.140002d90
lea rdx, [rbp + 0x110]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x3c0]
call fcn.140011080
nop
lea rdx, [rbp + 0x3c0]
lea rcx, [rbp + 0x360]
call fcn.140011080
mov r12, qword [rbp + 0x370]
lea rcx, [rbp + 0x360]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x140008411
mov r14, rsi
movabs r15, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x610]
call fcn.140001700
mov rdi, qword [rbp + 0x610]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0x398]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x610], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0x320]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x610], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x140008040
lea rcx, [rbp + 0x5d8]
call fcn.140001700
mov r14d, esi
lea rdi, [0x1405f2619]
nop
mov r15, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000816b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r15, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008197
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi], dl
mov r15, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400081c2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r15, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400081ee
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 2], dl
add r14d, 4
add rdi, 4
cmp r14d, 4
jb 0x140008150
lea rcx, [rbp + 0x1e0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5d8], rdi
mov r15d, esi
lea r14, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008245
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 - 1], dl
mov rdi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008272
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
mov rdi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000829e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 1], dl
mov rdi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400082cb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 2], dl
mov rdi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400082f8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 3], dl
mov rdi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008325
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 4], dl
mov rdi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008352
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 5], dl
mov rdi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000837f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 6], dl
add r15d, 8
add r14, 8
cmp r15d, 8
jae 0x1400083ab
mov rdi, qword [rbp + 0x5d8]
jmp 0x140008231
lea rcx, [rbp + 0x98]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5d8], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400083e4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000840a
mov rdi, qword [rbp + 0x5d8]
jmp 0x1400083d0
mov byte [0x1405f2606], 1
test r12, r12
je 0x140008552
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140008441
inc r8d
inc r9
cmp r8d, 4
jb 0x140008430
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x1400084a1
inc r8d
inc r9
cmp r8d, 8
jb 0x140008490
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140008501
inc r8d
inc r9
cmp r8d, 0xc
jb 0x1400084f0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x140008420
lea rcx, [rbp + 0x3c0]
call fcn.140002d30
lea rcx, [rbp + 0x360]
call fcn.140002d30
nop
lea rcx, [rbp + 0x110]
call fcn.140002f10
xorps xmm0, xmm0
movups xmmword [rbp + 0x6c0], xmm0
movups xmmword [rbp + 0x6d0], xmm0
movups xmmword [rbp + 0x6e0], xmm0
movups xmmword [rbp + 0x6f0], xmm0
movups xmmword [rbp + 0x700], xmm0
movups xmmword [rbp + 0x710], xmm0
lea rcx, [rbp + 0x6c0]
call fcn.140004cd0
nop
lea rcx, [rbp + 0x6c0]
call fcn.140003c40
mov dl, 1
lea rcx, [rbp + 0x6c0]
call fcn.140004050
test al, al
je 0x1400085fd
mov dl, 1
lea rcx, [rbp + 0x6c0]
call fcn.140003ef0
test al, al
je 0x1400085fd
lea rcx, [rbp + 0x6c0]
call fcn.1400042f0
test al, al
je 0x1400085fd
lea rcx, [rbp + 0x6c0]
call fcn.1400047c0
mov dword [rbp + 0x7f0], 0x348
mov edi, esi
xor edx, edx
xor r9d, r9d
lea r8, [rbp + 0x7f0]
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesW]
test eax, eax
je 0x14000ff2b
test byte [rbp + 0x934], 1
je 0x140008668
lea rdx, [rbp + 0x834]
lea rcx, [rbp + 0x678]
call fcn.140010c40
nop
cmp qword [rbp + 0x688], 0
je 0x14000865c
lea rcx, [rbp + 0x678]
call fcn.140004fa0
test al, al
jne 0x14000866e
lea rcx, [rbp + 0x678]
call fcn.140010bd0
inc edi
mov edx, edi
jmp 0x14000860b
lea rcx, [rbp + 0x678]
call fcn.140010bd0
call fcn.1400067c0
mov ecx, 3
call fcn.140043ad0
call fcn.140043870
mov r14, rax
mov qword [rbp + 0x30], rax
test rax, rax
je 0x14000ff16
movabs rax, 0xb9e841426add4f1f
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x220], rcx
movabs rax, 0xa3ace3d5d85a6b80
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x228], rcx
movabs rax, 0xd383fefccfd694cf
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x230], rax
movabs rax, 0xbb332e2f0b301d12
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x238], rax
movabs rax, 0x25ca39c10d0ca11d
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x240], rax
movabs rax, 0x14129f25fb18bb30
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x248], rax
movabs rax, 0x955f158862966f04
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x250], rax
movabs rax, 0x27550aa0fbf27607
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x258], rax
movabs rax, 0x7a8963a3bee15a55
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x260], rax
movabs rax, 0x22dd53093540bb8a
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x268], rax
movabs rax, 0x60e272bd5b559981
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x270], rax
movabs rax, 0x82b3237852febe2f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x278], rax
movabs rax, 0xeedbe8372a0c7b2b
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x280], rax
movabs rax, 0x3cb6ec7906a51ea5
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x288], rax
movabs rax, 0x40766002b0b53680
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x290], rax
movabs rcx, 0x32c8bac35af24cd2
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x298], rax
movabs r12, 0x88c76e781aa93b77
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbc0], rax
movabs r15, 0x9782d4e1e9745ab4
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbc8], rax
movabs rbx, 0xe2bac8c6f8e5a5e1
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbd0], rax
movabs rdi, 0xeb404d6767733226
mov qword [rbp + 8], rdi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbd8], rax
movabs rax, 0x5cf84f8c7f40ed2b
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbe0], rax
movabs rax, 0x4c2bd5759d28d208
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbe8], rax
movabs rax, 0xc66a7cea04ae3f55
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbf0], rax
movabs rax, 0x4a6733ebce9f424a
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbf8], rax
movabs rax, 0x42ed26d0daae221f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc00], rax
movabs rax, 0x77903a39047289dc
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc08], rax
movabs rax, 0x27b219de3867cfe9
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc10], rax
movabs rax, 0xf2fc171f39acf04e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc18], rax
movabs rax, 0x98be8a0412651e53
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc20], rax
movabs rax, 0x53e79f2d4ecf6ff0
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc28], rax
movabs rax, 0x40766002b0b50bbd
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc30], rax
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc38], rax
vmovdqu ymm0, ymmword [rbp + 0xbc0]
vpxor ymm0, ymm0, ymmword [rbp + 0x220]
vmovdqa ymmword [rbp + 0x220], ymm0
vmovdqu ymm1, ymmword [rbp + 0xbe0]
vpxor ymm0, ymm1, ymmword [rbp + 0x240]
vmovdqa ymmword [rbp + 0x240], ymm0
vmovdqu ymm0, ymmword [rbp + 0x260]
vpxor ymm1, ymm0, ymmword [rbp + 0xc00]
vmovdqa ymmword [rbp + 0x260], ymm1
vmovdqu ymm0, ymmword [rbp + 0xc20]
vpxor ymm0, ymm0, ymmword [rbp + 0x280]
vmovdqa ymmword [rbp + 0x280], ymm0
lea r8, [rbp + 0x220]
mov edx, 0x2712
mov rcx, r14
vzeroupper
call fcn.140046840
movzx edx, byte [rbp + 1]
lea rcx, [rbp + 0x618]
call fcn.140011ef0
lea rcx, [rbp + 0x618]
call fcn.140011870
nop
lea r8, [0x140006790]
mov edx, 0x4e2b
mov rcx, r14
call fcn.140046840
lea r8, [rbp + 0x618]
mov edx, 0x2711
mov rcx, r14
call fcn.140046840
mov rcx, r14
call fcn.1400438e0
test eax, eax
jne 0x14000ff01
movabs rax, 0x88976e391afd3b30
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1c0], rax
movabs rax, 0x97e7d482e91b5ac6
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1c8], rax
movabs rax, 0xe2bac8c6f896a592
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1d0], rax
mov qword [rbp + 8], rdi
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1d8], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb80], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb88], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb90], rax
mov qword [rbp + 8], rdi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb98], rax
vmovdqu ymm0, ymmword [rbp + 0x1c0]
vpxor ymm1, ymm0, ymmword [rbp + 0xb80]
vmovdqu ymmword [rbp + 0x1c0], ymm1
movzx edx, byte [rbp + 1]
lea rcx, [rbp + 0x698]
vzeroupper
call fcn.140011ef0
nop
lea rax, [rbp + 0x1c0]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x140008b50
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x698]
call fcn.140011f10
nop
lea rcx, [rbp + 0x698]
call fcn.140006460
mov dword [rbp + 0x38], eax
test eax, eax
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
jne 0x14000a716
mov qword [rbp + 0x600], rax
movabs rcx, 0xfa974e357fdf5231
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x40], rax
movabs rax, 0xf8ecf4929a1139db
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x48], rax
movabs rax, 0xccdea6b397838595
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x50], rax
mov qword [rbp + 8], rdi
mov rax, qword [rbp + 8]
mov qword [rbp + 0x58], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb40], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb48], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb50], rax
mov qword [rbp + 8], rdi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xb58], rax
vmovdqu ymm0, ymmword [rbp + 0x40]
vpxor ymm1, ymm0, ymmword [rbp + 0xb40]
vmovdqa ymmword [rbp + 0x40], ymm1
lea rax, [rbp + 0xc0]
mov qword [rbp + 0x98], rax
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0xc0]
vzeroupper
call fcn.140010f60
nop
xor eax, eax
mov qword [rbp + 0xe0], rax
cmp byte [0x1405f2603], al
jne 0x140008c7b
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2603], 1
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x1e8]
call fcn.140010f60
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x140008cfc
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x140008ce0
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x5e8], r11
mov qword [rbp + 0x548], r11
mov r8d, esi
test rbx, rbx
je 0x140008d8f
mov rdi, r14
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140008d40
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x5e8], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140008d30
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r14]
mov byte [rbp + 1], r12b
cmp rbx, 1
jbe 0x140008daf
movzx r14d, byte [rbx + r14 - 1]
jmp 0x140008db2
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x598], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor cl, r12b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140008dd0
mov byte [rbp + 0x598], cl
mov byte [rbp + 0x10], dl
mov r13d, esi
mov r15, rsi
lea rsi, [rbx*8]
mov r12d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x558], rax
movzx eax, byte [rbp + r15 + 0x558]
xor byte [rbp + r15 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r12d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x559]
xor byte [rbp + r15 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r15 + 0x55a]
xor byte [rbp + r15 + 0x54a], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x55b]
xor byte [rbp + r15 + 0x54b], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r15 + 0x55c]
xor byte [rbp + r15 + 0x54c], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x55d]
xor byte [rbp + r15 + 0x54d], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r15 + 0x55e]
xor byte [rbp + r15 + 0x54e], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x55f]
xor byte [rbp + r15 + 0x54f], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x598]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, r12d
lea r15, [r15 + 8]
cmp r13d, r12d
jb 0x140008e10
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x5e8]
xor rcx, rdx
mov qword [rbp + 0xe0], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0xc0]
call fcn.140010f30
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
cmp byte [0x1405f2604], 0
mov esi, 0
jne 0x1400091a1
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2604], 1
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x2c0]
call fcn.140010f60
nop
mov rdx, rax
lea rcx, [rbp + 0xb40]
call fcn.140011080
mov r12, qword [rbp + 0xb50]
lea rcx, [rbp + 0xb40]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x1400095d1
mov r14, rsi
movabs r15, 0x101010101010101
nop dword [rax + rax]
lea rcx, [rbp + 0x5f0]
call fcn.140001700
mov rdi, qword [rbp + 0x5f0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0xb0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f0], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0xb8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f0], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x140009200
lea rcx, [rbp + 0x560]
call fcn.140001700
mov r14d, esi
lea rdi, [0x1405f2619]
nop
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000932b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009357
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009382
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400093ae
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 2], dl
add r14d, 4
add rdi, 4
cmp r14d, 4
jb 0x140009310
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x560], rdi
mov r15d, esi
lea r14, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009405
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 - 1], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009432
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000945e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 1], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000948b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 2], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400094b8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 3], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400094e5
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 4], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009512
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 5], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000953f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 6], dl
add r15d, 8
add r14, 8
cmp r15d, 8
jae 0x14000956b
mov rdi, qword [rbp + 0x560]
jmp 0x1400093f1
lea rcx, [rbp + 0xf8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x560], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400095a4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x1400095ca
mov rdi, qword [rbp + 0x560]
jmp 0x140009590
mov byte [0x1405f2606], 1
test r12, r12
je 0x140009712
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140009601
inc r8d
inc r9
cmp r8d, 4
jb 0x1400095f0
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140009661
inc r8d
inc r9
cmp r8d, 8
jb 0x140009650
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x1400096c1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x1400096b0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x1400095e0
lea rdx, [rbp + 0xb40]
lea rcx, [rbp + 0x2a0]
call fcn.140011080
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x14000978c
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x140009770
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x5e8], r11
mov qword [rbp + 0x548], r11
mov r8d, esi
test rbx, rbx
je 0x14000981f
mov rdi, r14
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x1400097d0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x5e8], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x1400097c0
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r14]
mov byte [rbp + 1], r12b
cmp rbx, 1
jbe 0x14000983f
movzx r14d, byte [rbx + r14 - 1]
jmp 0x140009842
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x598], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor cl, r12b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140009860
mov byte [rbp + 0x598], cl
mov byte [rbp + 0x10], dl
mov r13d, esi
mov r15, rsi
lea rsi, [rbx*8]
mov r12d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x558], rax
movzx eax, byte [rbp + r15 + 0x558]
xor byte [rbp + r15 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r12d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x559]
xor byte [rbp + r15 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r15 + 0x55a]
xor byte [rbp + r15 + 0x54a], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x55b]
xor byte [rbp + r15 + 0x54b], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r15 + 0x55c]
xor byte [rbp + r15 + 0x54c], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x55d]
xor byte [rbp + r15 + 0x54d], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r15 + 0x55e]
xor byte [rbp + r15 + 0x54e], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r15 + 0x55f]
xor byte [rbp + r15 + 0x54f], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x598]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, r12d
lea r15, [r15 + 8]
cmp r13d, r12d
jb 0x1400098a0
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x5e8]
xor rcx, rdx
mov qword [rbp + 0xe0], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0xc0]
call fcn.140010f30
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
lea rcx, [rbp + 0xb40]
call fcn.140002d30
nop
lea rcx, [rbp + 0x2c0]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0xd0]
lea rcx, [rbp + 0xc0]
call fcn.1400119f0
mov r14, rax
mov qword [rbp + 8], rax
cmp byte [0x1405f2605], 0
mov esi, 0
jne 0x140009c9c
lea rdx, [0x1405f2620]
movabs rax, 0xfeeddccbbaa99887
lea rdi, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax + rax]
mov rcx, rax
xor rcx, r8
mov qword [rdx], rcx
sub rax, r9
add rdx, 8
cmp rdx, rdi
jl 0x140009c80
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x548], rax
mov r8d, esi
test rbx, rbx
je 0x140009d20
mov rdi, r14
nop
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140009cd0
not cl
movzx eax, cl
mov r14, qword [rbp + 0x548]
xor r14, qword [r9 + rax*8]
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x548], r14
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140009cc0
mov r14, qword [rbp + 8]
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r14]
mov byte [rbp + 1], r12b
cmp rbx, 1
jbe 0x140009d40
movzx r14d, byte [rbx + r14 - 1]
jmp 0x140009d43
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x598], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r12b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x140009d60
mov byte [rbp + 0x598], cl
mov byte [rbp + 0x10], dl
mov r15d, esi
lea r13, [rbx*8]
mov r11, rsi
mov esi, 8
mov r12, r9
mov r14d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r15d
test r15d, r15d
cmove eax, r14d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x558], rax
movzx eax, byte [rbp + r11 + 0x558]
xor byte [rbp + r11 + 0x548], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, esi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r11 + 0x559]
xor byte [rbp + r11 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r11 + 0x55a]
xor byte [rbp + r11 + 0x54a], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r11 + 0x55b]
xor byte [rbp + r11 + 0x54b], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r11 + 0x55c]
xor byte [rbp + r11 + 0x54c], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r11 + 0x55d]
xor byte [rbp + r11 + 0x54d], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x598]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x558], r8
movzx eax, byte [rbp + r11 + 0x55e]
xor byte [rbp + r11 + 0x54e], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x558], r9
movzx eax, byte [rbp + r11 + 0x55f]
xor byte [rbp + r11 + 0x54f], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x598]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r15d, esi
lea r11, [r11 + 8]
cmp r15d, esi
jb 0x140009da0
movzx r14d, byte [rbp]
imul r8, r14, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x60]
xor r8, rdx
mov rdx, qword [rbp + 0xe0]
cmp r8, rdx
mov esi, 0
je 0x14000a10b
mov rdi, qword [0x1405f2610]
lea rcx, [rbp + 0x180]
call fcn.140002d90
lea rdx, [rbp + 0xc0]
mov rcx, rax
call rdi
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0xb60]
call fcn.140011080
nop
lea rdx, [rbp + 0xb60]
lea rcx, [rbp + 0xb80]
call fcn.140011080
mov r12, qword [rbp + 0xb90]
lea rcx, [rbp + 0xb80]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x14000a541
mov r14, rsi
movabs r15, 0x101010101010101
nop dword [rax]
lea rcx, [rbp + 0x5f8]
call fcn.140001700
mov rdi, qword [rbp + 0x5f8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0x100]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0xa0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000a170
lea rcx, [rbp + 0x550]
call fcn.140001700
mov edi, esi
lea r15, [0x1405f2619]
nop dword [rax]
mov r14, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a29b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 - 1], dl
mov r14, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a2c8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15], dl
mov r14, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a2f4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 + 1], dl
mov r14, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a321
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 + 2], dl
add edi, 4
add r15, 4
cmp edi, 4
jb 0x14000a280
lea rcx, [rbp + 0xa8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x550], rdi
mov r14d, esi
lea r15, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a377
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3a4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3d0
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3fd
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a42a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a457
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a484
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x550]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a4b1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r14d, 8
add r15, 8
cmp r14d, 8
jae 0x14000a4dd
mov rdi, qword [rbp + 0x550]
jmp 0x14000a363
lea rcx, [rbp + 0x108]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x550], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a514
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000a53a
mov rdi, qword [rbp + 0x550]
jmp 0x14000a500
mov byte [0x1405f2606], 1
test r12, r12
je 0x14000a6a2
mov r10d, esi
lea r11, [0x1405f2f20]
lea r14, [0x1405f2618]
lea r15, [0x1405f2e18]
nop dword [rax]
nop word [rax + rax]
mov r8d, esi
movzx eax, byte [rbx]
mov r9, r14
nop dword [rax]
mov edi, esi
movzx ecx, byte [r9]
lea rdx, [rcx*8 + 0x5f2f31]
add rdx, r13
xor al, byte [rdx - 1]
mov byte [rbx], al
xor al, byte [rdx]
mov byte [rbx], al
xor al, byte [rdx + 1]
mov byte [rbx], al
xor al, byte [rdx + 2]
mov byte [rbx], al
xor al, byte [rdx + 3]
mov byte [rbx], al
xor al, byte [rdx + 4]
mov byte [rbx], al
xor al, byte [rdx + 5]
mov byte [rbx], al
xor al, byte [rdx + 6]
mov byte [rbx], al
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000a591
inc r8d
inc r9
cmp r8d, 4
jb 0x14000a580
mov r8d, esi
mov r9, r15
nop word [rax + rax]
mov edi, esi
movzx ecx, byte [r9]
lea rdx, [rcx*8 + 0x5f2e21]
add rdx, r13
xor al, byte [rdx - 1]
mov byte [rbx], al
xor al, byte [rdx]
mov byte [rbx], al
xor al, byte [rdx + 1]
mov byte [rbx], al
xor al, byte [rdx + 2]
mov byte [rbx], al
xor al, byte [rdx + 3]
mov byte [rbx], al
xor al, byte [rdx + 4]
mov byte [rbx], al
xor al, byte [rdx + 5]
mov byte [rbx], al
xor al, byte [rdx + 6]
mov byte [rbx], al
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000a5f1
inc r8d
inc r9
cmp r8d, 8
jb 0x14000a5e0
mov r8d, esi
mov r9, r11
nop word [rax + rax]
mov edi, esi
movzx ecx, byte [r9]
lea rdx, [rcx*8 + 0x5f2f31]
add rdx, r13
xor al, byte [rdx - 1]
mov byte [rbx], al
xor al, byte [rdx]
mov byte [rbx], al
xor al, byte [rdx + 1]
mov byte [rbx], al
xor al, byte [rdx + 2]
mov byte [rbx], al
xor al, byte [rdx + 3]
mov byte [rbx], al
xor al, byte [rdx + 4]
mov byte [rbx], al
xor al, byte [rdx + 5]
mov byte [rbx], al
xor al, byte [rdx + 6]
mov byte [rbx], al
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000a651
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000a640
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x14000a570
lea rcx, [rbp + 0xb60]
call fcn.140002d30
nop
lea rdx, [rbp + 0xb80]
mov rcx, qword [rbp + 0x600]
call fcn.140011e00
lea rdx, [0x140011e20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0xb80]
call fcn.140002d30
nop
lea rcx, [rbp + 0xc0]
call fcn.140002f10
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x698]
call fcn.140010bd0
nop
lea rcx, [rbp + 0x618]
call fcn.140002d30
jmp 0x140010008
mov qword [rbp + 0x20], rax
movabs rcx, 0xe6ae061b68c85e24
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x140], rax
movabs rax, 0x9782d4e1c75a74d3
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x148], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xba0], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xba8], rax
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rbp + 0xba0]
movdqa xmmword [rbp + 0x140], xmm0
lea rax, [rbp + 0x70]
mov qword [rbp + 0x5b8], rax
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x70]
call fcn.140010f60
nop
xor eax, eax
mov qword [rbp + 0x90], rax
cmp byte [0x1405f2603], al
jne 0x14000a7c3
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2603], 1
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x400]
call fcn.140010f60
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x14000a83c
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000a820
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x578], r11
mov r8d, esi
test rbx, rbx
je 0x14000a8cc
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x579]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000a880
not cl
movzx eax, cl
mov r11, qword [rbp + 0x578]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x578], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000a870
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000a8ec
movzx r14d, byte [rbx + r14 - 1]
jmp 0x14000a8ef
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x5a0], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000a910
mov byte [rbp + 0x5a0], cl
mov byte [rbp + 0x10], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x5d0], rax
movzx eax, byte [rbp + r12 + 0x5d0]
xor byte [rbp + r12 + 0x578], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x578], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x5d0], r9
movzx eax, byte [rbp + r12 + 0x5d1]
xor byte [rbp + r12 + 0x579], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x5a0]
shl rax, cl
xor qword [rbp + 0x578], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5d0], r8
movzx eax, byte [rbp + r12 + 0x5d2]
xor byte [rbp + r12 + 0x57a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x578], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5d0], r9
movzx eax, byte [rbp + r12 + 0x5d3]
xor byte [rbp + r12 + 0x57b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a0]
shl rax, cl
xor qword [rbp + 0x578], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5d0], r8
movzx eax, byte [rbp + r12 + 0x5d4]
xor byte [rbp + r12 + 0x57c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x578], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5d0], r9
movzx eax, byte [rbp + r12 + 0x5d5]
xor byte [rbp + r12 + 0x57d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a0]
shl rax, cl
xor qword [rbp + 0x578], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5d0], r8
movzx eax, byte [rbp + r12 + 0x5d6]
xor byte [rbp + r12 + 0x57e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x578], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5d0], r9
movzx eax, byte [rbp + r12 + 0x5d7]
xor byte [rbp + r12 + 0x57f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x5a0]
shl rdx, cl
xor rdx, qword [rbp + 0x578]
mov qword [rbp + 0x578], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x14000a950
movzx r14d, byte [rbp]
imul rax, r14, 0xff
not rax
movzx ecx, byte [rbp + 1]
shl rcx, 7
sub rax, rcx
and rdx, qword [rbp + 0x18]
xor rax, rdx
mov qword [rbp + 0x578], rax
mov qword [rbp + 0x90], rax
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x70]
call fcn.140010f30
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
cmp byte [0x1405f2604], 0
mov esi, 0
jne 0x14000ace3
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2604], 1
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0x480]
call fcn.140010f60
nop
mov rdx, rax
lea rcx, [rbp + 0x300]
call fcn.140011080
mov r12, qword [rbp + 0x310]
lea rcx, [rbp + 0x300]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x14000b111
mov r14, rsi
movabs r15, 0x101010101010101
nop dword [rax]
lea rcx, [rbp + 0x600]
call fcn.140001700
mov rdi, qword [rbp + 0x600]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0x330]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x600], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0x338]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x600], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000ad40
lea rcx, [rbp + 0x5c8]
call fcn.140001700
mov r14d, esi
lea rdi, [0x1405f2619]
nop
mov r15, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ae6b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r15, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ae97
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi], dl
mov r15, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000aec2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r15, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000aeee
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 2], dl
add r14d, 4
add rdi, 4
cmp r14d, 4
jb 0x14000ae50
lea rcx, [rbp + 0x340]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5c8], rdi
mov r15d, esi
lea r14, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000af45
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 - 1], dl
mov rdi, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000af72
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
mov rdi, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000af9e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 1], dl
mov rdi, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000afcb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 2], dl
mov rdi, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000aff8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 3], dl
mov rdi, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b025
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 4], dl
mov rdi, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b052
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 5], dl
mov rdi, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b07f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 6], dl
add r15d, 8
add r14, 8
cmp r15d, 8
jae 0x14000b0ab
mov rdi, qword [rbp + 0x5c8]
jmp 0x14000af31
lea rcx, [rbp + 0x348]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5c8], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b0e4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000b10a
mov rdi, qword [rbp + 0x5c8]
jmp 0x14000b0d0
mov byte [0x1405f2606], 1
test r12, r12
je 0x14000b252
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000b141
inc r8d
inc r9
cmp r8d, 4
jb 0x14000b130
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000b1a1
inc r8d
inc r9
cmp r8d, 8
jb 0x14000b190
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000b201
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000b1f0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x14000b120
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x3e0]
call fcn.140011080
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x14000b2cc
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000b2b0
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x580], r11
mov r8d, esi
test rbx, rbx
je 0x14000b35c
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x581]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000b310
not cl
movzx eax, cl
mov r11, qword [rbp + 0x580]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x580], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000b300
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000b37c
movzx r14d, byte [rbx + r14 - 1]
jmp 0x14000b37f
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x5a0], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000b3a0
mov byte [rbp + 0x5a0], cl
mov byte [rbp + 0x10], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x5b8], rax
movzx eax, byte [rbp + r12 + 0x5b8]
xor byte [rbp + r12 + 0x580], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x580], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x5b8], r9
movzx eax, byte [rbp + r12 + 0x5b9]
xor byte [rbp + r12 + 0x581], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x5a0]
shl rax, cl
xor qword [rbp + 0x580], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5b8], r8
movzx eax, byte [rbp + r12 + 0x5ba]
xor byte [rbp + r12 + 0x582], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x580], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5b8], r9
movzx eax, byte [rbp + r12 + 0x5bb]
xor byte [rbp + r12 + 0x583], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a0]
shl rax, cl
xor qword [rbp + 0x580], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5b8], r8
movzx eax, byte [rbp + r12 + 0x5bc]
xor byte [rbp + r12 + 0x584], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x580], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5b8], r9
movzx eax, byte [rbp + r12 + 0x5bd]
xor byte [rbp + r12 + 0x585], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x5a0]
shl rax, cl
xor qword [rbp + 0x580], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5b8], r8
movzx eax, byte [rbp + r12 + 0x5be]
xor byte [rbp + r12 + 0x586], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x580], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5b8], r9
movzx eax, byte [rbp + r12 + 0x5bf]
xor byte [rbp + r12 + 0x587], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x5a0]
shl rdx, cl
xor rdx, qword [rbp + 0x580]
mov qword [rbp + 0x580], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x14000b3e0
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x18]
xor rcx, rdx
mov qword [rbp + 0x580], rcx
mov qword [rbp + 0x90], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x70]
call fcn.140010f30
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
lea rcx, [rbp + 0x300]
call fcn.140002d30
nop
lea rcx, [rbp + 0x480]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x80]
lea rcx, [rbp + 0x70]
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
mov esi, 0
jne 0x14000b7dc
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000b7c0
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x588], r11
mov r8d, esi
test rbx, rbx
je 0x14000b86c
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x589]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000b820
not cl
movzx eax, cl
mov r11, qword [rbp + 0x588]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x588], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000b810
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000b88c
movzx r14d, byte [rbx + r14 - 1]
jmp 0x14000b88f
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000b8a3
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x10], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x5a0], rax
movzx eax, byte [rbp + r12 + 0x5a0]
xor byte [rbp + r12 + 0x588], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x588], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x5a0], r9
movzx eax, byte [rbp + r12 + 0x5a1]
xor byte [rbp + r12 + 0x589], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x588], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5a0], r8
movzx eax, byte [rbp + r12 + 0x5a2]
xor byte [rbp + r12 + 0x58a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x588], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5a0], r9
movzx eax, byte [rbp + r12 + 0x5a3]
xor byte [rbp + r12 + 0x58b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x588], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5a0], r8
movzx eax, byte [rbp + r12 + 0x5a4]
xor byte [rbp + r12 + 0x58c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x588], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5a0], r9
movzx eax, byte [rbp + r12 + 0x5a5]
xor byte [rbp + r12 + 0x58d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x588], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x5a0], r8
movzx eax, byte [rbp + r12 + 0x5a6]
xor byte [rbp + r12 + 0x58e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x588], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x5a0], r9
movzx eax, byte [rbp + r12 + 0x5a7]
xor byte [rbp + r12 + 0x58f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x588]
mov qword [rbp + 0x588], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x14000b8e0
movzx r14d, byte [rbp]
imul r8, r14, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 8]
xor r8, rdx
mov qword [rbp + 0x588], r8
mov rdx, qword [rbp + 0x90]
cmp r8, rdx
mov esi, 0
je 0x14000bc52
mov rdi, qword [0x1405f2610]
lea rcx, [rbp + 0x510]
call fcn.140002d90
lea rdx, [rbp + 0x70]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x70]
lea rcx, [rbp + 0x3a0]
call fcn.140011080
nop
lea rdx, [rbp + 0x3a0]
lea rcx, [rbp + 0x160]
call fcn.140011080
mov r12, qword [rbp + 0x170]
lea rcx, [rbp + 0x160]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x14000c079
mov r14, rsi
movabs r15, 0x101010101010101
nop dword [rax]
lea rcx, [rbp + 0x5e8]
call fcn.140001700
mov rdi, qword [rbp + 0x5e8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0x350]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5e8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0x358]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5e8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000bcb0
lea rcx, [rbp + 0x598]
call fcn.140001700
mov r14d, esi
lea rdi, [0x1405f2619]
nop
mov r15, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bddb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r15, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000be07
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi], dl
mov r15, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000be32
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r15, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000be5e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 2], dl
add r14d, 4
add rdi, 4
cmp r14d, 4
jb 0x14000bdc0
lea rcx, [rbp + 0xf0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x598], rdi
mov r15d, esi
lea r14, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000beb5
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 - 1], dl
mov rdi, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bee2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
mov rdi, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf0e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 1], dl
mov rdi, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf3b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 2], dl
mov rdi, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf68
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 3], dl
mov rdi, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf95
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 4], dl
mov rdi, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bfc2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 5], dl
mov rdi, qword [rbp + 0x598]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bfef
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 6], dl
add r15d, 8
add r14, 8
cmp r15d, 8
jae 0x14000c01b
mov rdi, qword [rbp + 0x598]
jmp 0x14000bea1
lea rcx, [rbp + 0x68]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x598], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c04c
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000c072
mov rdi, qword [rbp + 0x598]
jmp 0x14000c038
mov byte [0x1405f2606], 1
test r12, r12
je 0x14000c1c2
mov r10d, esi
nop word [rax + rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000c0b1
inc r8d
inc r9
cmp r8d, 4
jb 0x14000c0a0
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000c111
inc r8d
inc r9
cmp r8d, 8
jb 0x14000c100
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000c171
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000c160
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x14000c090
lea rcx, [rbp + 0x3a0]
call fcn.140002d30
nop
lea rdx, [rbp + 0x160]
mov rcx, qword [rbp + 0x20]
call fcn.140011e00
lea rdx, [0x140011e20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0x160]
call fcn.140002d30
nop
lea rcx, [rbp + 0x70]
call fcn.140002f10
lea rcx, [rbp + 0x720]
lea rax, [r13 + 0x44d080]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
movups xmm0, xmmword [rax + 0x80]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x90]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0xa0]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0xb0]
movups xmmword [rcx + 0x30], xmm1
movzx eax, byte [rax + 0xc0]
mov byte [rcx + 0x40], al
mov edi, esi
mov r14d, 5
lea r15d, [r14 + 0x1a]
mov ebx, dword [reloc.WS2_32.dll_accept]
cmp ebx, 2
jl 0x14000c3ee
movdqa xmm5, xmmword [0x14044ee30]
movdqa xmm4, xmmword [0x14044ee70]
movd xmm6, r14d
movdqa xmm7, xmmword [0x14044ee40]
movd xmm8, r15d
movdqa xmm0, xmmword [0x14044ee60]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x724]
mov edx, dword [rbp + 0x20]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044ee50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044ee50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 0xc0
jl 0x14000c2e2
cmp edi, 0xc1
jge 0x14000c432
movsxd rax, edi
lea r8, [rbp + 0x720]
add r8, rax
nop dword [rax + rax]
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, dil
sub al, cl
add al, 0x34
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x14000c400
lea rdx, [rbp + 0x720]
lea rcx, [rbp + 0x638]
call fcn.140010f60
nop
lea r8, [rbp + 0x618]
lea rdx, [rbp + 0x638]
lea rcx, [rbp + 0x658]
call fcn.140005950
nop
lea rdi, [rbp + 0x638]
cmp qword [rbp + 0x650], 0x10
cmovae rdi, qword [rbp + 0x638]
xor eax, eax
mov rcx, qword [rbp + 0x648]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x618]
cmp qword [rbp + 0x630], 0x10
cmovae rdi, qword [rbp + 0x618]
mov rcx, qword [rbp + 0x628]
rep stosb byte [rdi], al
cmp byte [rbp + 0x7e0], al
jne 0x14000c642
mov edi, esi
cmp ebx, 2
jl 0x14000c5ff
movdqa xmm5, xmmword [0x14044ee30]
movdqa xmm4, xmmword [0x14044ee70]
movd xmm6, r14d
movdqa xmm7, xmmword [0x14044ee40]
movd xmm8, r15d
movdqa xmm0, xmmword [0x14044ee60]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x724]
mov edx, dword [rbp + 0x20]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044ee50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044ee50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 0xc0
jl 0x14000c4f3
cmp edi, 0xc1
jge 0x14000c642
movsxd rax, edi
lea r8, [rbp + 0x720]
add r8, rax
nop dword [rax]
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, dil
sub al, cl
add al, 0x34
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x14000c610
lea rax, [rbp + 0x720]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov byte [rax + 0x40], cl
lea rdx, [rbp + 0x658]
mov ecx, dword [rbp + 0x38]
call fcn.1400063b0
movabs rdx, 0xe2bac8c6f8e5a5e1
test al, al
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
je 0x14000e199
mov qword [rbp + 0x5e8], rax
movabs rcx, 0xa8b4075868cc4822
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x40], rax
movabs rax, 0xf8c5f486871d29c1
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x48], rax
movabs rax, 0xe2bac8c6f88dd192
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x50], rax
movabs rcx, 0xeb404d6767733226
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x58], rax
movabs rax, 0x88c76e781aa93b77
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb40], rax
movabs rax, 0x9782d4e1e9745ab4
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb48], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb50], rax
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb58], rax
vmovdqu ymm0, ymmword [rbp + 0x40]
vpxor ymm1, ymm0, ymmword [rbp + 0xb40]
vmovdqa ymmword [rbp + 0x40], ymm1
lea rax, [rbp + 0x70]
mov qword [rbp + 0x68], rax
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x70]
vzeroupper
call fcn.140010f60
nop
xor eax, eax
mov qword [rbp + 0x90], rax
cmp byte [0x1405f2603], al
jne 0x14000c7b1
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2603], 1
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x2c0]
call fcn.140010f60
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x14000c82c
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000c810
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
mov r8d, esi
test rbx, rbx
je 0x14000c8bc
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000c870
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000c860
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000c8dc
movzx r14d, byte [rbx + r14 - 1]
jmp 0x14000c8df
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000c8f3
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x18], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x550], rax
movzx eax, byte [rbp + r12 + 0x550]
xor byte [rbp + r12 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x551]
xor byte [rbp + r12 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x552]
xor byte [rbp + r12 + 0x54a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x553]
xor byte [rbp + r12 + 0x54b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x554]
xor byte [rbp + r12 + 0x54c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x555]
xor byte [rbp + r12 + 0x54d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x556]
xor byte [rbp + r12 + 0x54e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x557]
xor byte [rbp + r12 + 0x54f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x14000c930
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x90], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x70]
call fcn.140010f30
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
cmp byte [0x1405f2604], 0
mov esi, 0
jne 0x14000ccb0
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2604], 1
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x1e8]
call fcn.140010f60
nop
mov rdx, rax
lea rcx, [rbp + 0xb40]
call fcn.140011080
mov r12, qword [rbp + 0xb50]
lea rcx, [rbp + 0xb40]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x14000d0e1
mov r14, rsi
movabs r15, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x5f8]
call fcn.140001700
mov rdi, qword [rbp + 0x5f8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0x108]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0xa8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000cd10
lea rcx, [rbp + 0x560]
call fcn.140001700
mov r14d, esi
lea rdi, [0x1405f2619]
nop
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ce3b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ce67
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ce92
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cebe
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 2], dl
add r14d, 4
add rdi, 4
cmp r14d, 4
jb 0x14000ce20
lea rcx, [rbp + 0xa0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x560], rdi
mov r15d, esi
lea r14, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cf15
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 - 1], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cf42
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cf6e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 1], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cf9b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 2], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cfc8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 3], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cff5
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 4], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d022
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 5], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d04f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 6], dl
add r15d, 8
add r14, 8
cmp r15d, 8
jae 0x14000d07b
mov rdi, qword [rbp + 0x560]
jmp 0x14000cf01
lea rcx, [rbp + 0x100]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x560], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d0b4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000d0da
mov rdi, qword [rbp + 0x560]
jmp 0x14000d0a0
mov byte [0x1405f2606], 1
test r12, r12
je 0x14000d222
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000d111
inc r8d
inc r9
cmp r8d, 4
jb 0x14000d100
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000d171
inc r8d
inc r9
cmp r8d, 8
jb 0x14000d160
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000d1d1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000d1c0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x14000d0f0
lea rdx, [rbp + 0xb40]
lea rcx, [rbp + 0x2a0]
call fcn.140011080
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x14000d29c
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000d280
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
mov r8d, esi
test rbx, rbx
je 0x14000d32c
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000d2e0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000d2d0
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000d34c
movzx r14d, byte [rbx + r14 - 1]
jmp 0x14000d34f
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000d363
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x18], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x550], rax
movzx eax, byte [rbp + r12 + 0x550]
xor byte [rbp + r12 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x551]
xor byte [rbp + r12 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x552]
xor byte [rbp + r12 + 0x54a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x553]
xor byte [rbp + r12 + 0x54b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x554]
xor byte [rbp + r12 + 0x54c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x555]
xor byte [rbp + r12 + 0x54d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x556]
xor byte [rbp + r12 + 0x54e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x557]
xor byte [rbp + r12 + 0x54f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x14000d3a0
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x90], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x70]
call fcn.140010f30
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
lea rcx, [rbp + 0xb40]
call fcn.140002d30
nop
lea rcx, [rbp + 0x1e8]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x80]
lea rcx, [rbp + 0x70]
call fcn.1400119f0
mov r11, rax
mov qword [rbp + 0x20], rax
cmp byte [0x1405f2605], 0
mov esi, 0
jne 0x14000d78c
lea rdx, [0x1405f2620]
movabs rax, 0xfeeddccbbaa99887
lea rdi, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
nop dword [rax + rax]
mov rcx, rax
xor rcx, r8
mov qword [rdx], rcx
sub rax, r9
add rdx, 8
cmp rdx, rdi
jl 0x14000d770
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x548], rax
mov r8d, esi
test rbx, rbx
je 0x14000d810
mov rdi, r11
nop
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000d7c0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x60], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000d7b0
mov r11, qword [rbp + 0x20]
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r11]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000d830
movzx r11d, byte [rbx + r11 - 1]
jmp 0x14000d833
mov r11b, 0xae
mov byte [rbp], r11b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r15b
xor dl, r11b
inc eax
cmp eax, 8
jb 0x14000d850
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x18], dl
mov r13d, esi
lea r12, [rbx*8]
mov r14, rsi
mov esi, 8
mov r15, r9
mov r11d, 1
nop
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x550], rax
movzx eax, byte [rbp + r14 + 0x550]
xor byte [rbp + r14 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, esi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x551]
xor byte [rbp + r14 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r14 + 0x552]
xor byte [rbp + r14 + 0x54a], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x553]
xor byte [rbp + r14 + 0x54b], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r14 + 0x554]
xor byte [rbp + r14 + 0x54c], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x555]
xor byte [rbp + r14 + 0x54d], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r14 + 0x556]
xor byte [rbp + r14 + 0x54e], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x557]
xor byte [rbp + r14 + 0x54f], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, esi
lea r14, [r14 + 8]
cmp r13d, esi
jb 0x14000d880
movzx r11d, byte [rbp]
imul r8, r11, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x60]
xor r8, rdx
mov rdx, qword [rbp + 0x90]
cmp r8, rdx
mov esi, 0
je 0x14000dbdc
mov rdi, qword [0x1405f2610]
lea rcx, [rbp + 0x180]
call fcn.140002d90
lea rdx, [rbp + 0x70]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x70]
lea rcx, [rbp + 0xb60]
call fcn.140011080
nop
lea rdx, [rbp + 0xb60]
lea rcx, [rbp + 0x160]
call fcn.140011080
mov r12, qword [rbp + 0x170]
lea rcx, [rbp + 0x160]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x14000e011
mov r14, rsi
movabs r15, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x5f0]
call fcn.140001700
mov rdi, qword [rbp + 0x5f0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0xf8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f0], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f0], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000dc40
lea rcx, [rbp + 0x558]
call fcn.140001700
mov edi, esi
lea r15, [0x1405f2619]
nop dword [rax]
mov r14, qword [rbp + 0x558]
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, r14
cqo
idiv rcx
mov byte [r15 - 1], dl
mov r14, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dd98
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15], dl
mov r14, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ddc4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 + 1], dl
mov r14, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ddf1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 + 2], dl
add edi, 4
add r15, 4
cmp edi, 4
jb 0x14000dd50
lea rcx, [rbp + 0xb8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x558], rdi
mov r14d, esi
lea r15, [0x1405f2e19]
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
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000de74
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dea0
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000decd
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000defa
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000df27
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000df54
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000df81
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r14d, 8
add r15, 8
cmp r14d, 8
jae 0x14000dfad
mov rdi, qword [rbp + 0x558]
jmp 0x14000de33
lea rcx, [rbp + 0xb0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x558], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000dfe4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000e00a
mov rdi, qword [rbp + 0x558]
jmp 0x14000dfd0
mov byte [0x1405f2606], 1
test r12, r12
je 0x14000e152
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000e041
inc r8d
inc r9
cmp r8d, 4
jb 0x14000e030
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000e0a1
inc r8d
inc r9
cmp r8d, 8
jb 0x14000e090
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000e101
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000e0f0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x14000e020
lea rcx, [rbp + 0xb60]
call fcn.140002d30
nop
lea rdx, [rbp + 0x160]
mov rcx, qword [rbp + 0x5e8]
call fcn.140011e00
lea rdx, [0x140011e20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0x160]
call fcn.140002d30
nop
lea rcx, [rbp + 0x70]
jmp 0x14000fc77
mov qword [rbp + 0x5e8], rax
movabs rcx, 0xe7a94e106eda5430
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x40], rax
movabs rax, 0xb9e6ba9486127ac0
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x50], rax
movabs rcx, 0xeb404d6767733226
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x58], rax
movabs rax, 0x88c76e781aa93b77
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb40], rax
movabs rax, 0x9782d4e1e9745ab4
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb48], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb50], rax
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xb58], rax
vmovdqu ymm0, ymmword [rbp + 0x40]
vpxor ymm1, ymm0, ymmword [rbp + 0xb40]
vmovdqa ymmword [rbp + 0x40], ymm1
lea rax, [rbp + 0x180]
mov qword [rbp + 0x68], rax
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x180]
vzeroupper
call fcn.140010f60
nop
xor eax, eax
mov qword [rbp + 0x1a0], rax
cmp byte [0x1405f2603], al
jne 0x14000e298
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2603], 1
lea rdx, [0x14043e9a0]
lea rcx, [rbp + 0x2c0]
call fcn.140010f60
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x14000e30c
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000e2f0
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
mov r8d, esi
test rbx, rbx
je 0x14000e39c
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000e350
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000e340
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000e3bc
movzx r14d, byte [rbx + r14 - 1]
jmp 0x14000e3bf
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000e3d3
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x18], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x550], rax
movzx eax, byte [rbp + r12 + 0x550]
xor byte [rbp + r12 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x551]
xor byte [rbp + r12 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x552]
xor byte [rbp + r12 + 0x54a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x553]
xor byte [rbp + r12 + 0x54b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x554]
xor byte [rbp + r12 + 0x54c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x555]
xor byte [rbp + r12 + 0x54d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x556]
xor byte [rbp + r12 + 0x54e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x557]
xor byte [rbp + r12 + 0x54f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x14000e410
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x1a0], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x180]
call fcn.140010f30
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
cmp byte [0x1405f2604], 0
mov esi, 0
jne 0x14000e793
lea rax, [0x140002eb0]
mov qword [0x1405f2610], rax
mov byte [0x1405f2604], 1
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0xc0]
call fcn.140010f60
nop
mov rdx, rax
lea rcx, [rbp + 0xb40]
call fcn.140011080
mov r12, qword [rbp + 0xb50]
lea rcx, [rbp + 0xb40]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x14000ebc1
mov r14, rsi
movabs r15, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x5f8]
call fcn.140001700
mov rdi, qword [rbp + 0x5f8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0x108]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0xa8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f8], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000e7f0
lea rcx, [rbp + 0x560]
call fcn.140001700
mov r14d, esi
lea rdi, [0x1405f2619]
nop
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e91b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e947
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e972
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r15, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e99e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rdi + 2], dl
add r14d, 4
add rdi, 4
cmp r14d, 4
jb 0x14000e900
lea rcx, [rbp + 0xa0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x560], rdi
mov r15d, esi
lea r14, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e9f5
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 - 1], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ea22
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ea4e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 1], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ea7b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 2], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000eaa8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 3], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ead5
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 4], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000eb02
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 5], dl
mov rdi, qword [rbp + 0x560]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000eb2f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14 + 6], dl
add r15d, 8
add r14, 8
cmp r15d, 8
jae 0x14000eb5b
mov rdi, qword [rbp + 0x560]
jmp 0x14000e9e1
lea rcx, [rbp + 0x100]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x560], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000eb94
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000ebba
mov rdi, qword [rbp + 0x560]
jmp 0x14000eb80
mov byte [0x1405f2606], 1
test r12, r12
je 0x14000ed02
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000ebf1
inc r8d
inc r9
cmp r8d, 4
jb 0x14000ebe0
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000ec51
inc r8d
inc r9
cmp r8d, 8
jb 0x14000ec40
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000ecb1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000eca0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x14000ebd0
lea rdx, [rbp + 0xb40]
lea rcx, [rbp + 0x2a0]
call fcn.140011080
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400119f0
mov r14, rax
cmp byte [0x1405f2605], 0
jne 0x14000ed7c
movabs rdi, 0xfeeddccbbaa99887
lea rdx, [0x1405f2620]
lea rax, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000ed60
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
mov r8d, esi
test rbx, rbx
je 0x14000ee0c
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000edc0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000edb0
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r14]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000ee2c
movzx r14d, byte [rbx + r14 - 1]
jmp 0x14000ee2f
mov r14b, 0xae
mov byte [rbp], r14b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r15b
xor dl, r14b
inc eax
cmp eax, 8
jb 0x14000ee43
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x18], dl
mov r13d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r15d, 8
mov r14, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x550], rax
movzx eax, byte [rbp + r12 + 0x550]
xor byte [rbp + r12 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x551]
xor byte [rbp + r12 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x552]
xor byte [rbp + r12 + 0x54a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x553]
xor byte [rbp + r12 + 0x54b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x554]
xor byte [rbp + r12 + 0x54c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x555]
xor byte [rbp + r12 + 0x54d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r12 + 0x556]
xor byte [rbp + r12 + 0x54e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r12 + 0x557]
xor byte [rbp + r12 + 0x54f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, r15d
lea r12, [r12 + 8]
cmp r13d, r15d
jb 0x14000ee80
movzx r14d, byte [rbp]
imul rcx, r14, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x1a0], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x180]
call fcn.140010f30
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
lea rcx, [rbp + 0xb40]
call fcn.140002d30
nop
lea rcx, [rbp + 0xc0]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x190]
lea rcx, [rbp + 0x180]
call fcn.1400119f0
mov r11, rax
mov qword [rbp + 0x20], rax
cmp byte [0x1405f2605], 0
mov esi, 0
jne 0x14000f26c
lea rdx, [0x1405f2620]
movabs rax, 0xfeeddccbbaa99887
lea rdi, [0x1405f2e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop word [rax + rax]
mov rcx, rax
xor rcx, r8
mov qword [rdx], rcx
sub rax, r9
add rdx, 8
cmp rdx, rdi
jl 0x14000f250
mov byte [0x1405f2605], 1
lea r9, [0x1405f2620]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x548], rax
mov r8d, esi
test rbx, rbx
je 0x14000f2f0
mov rdi, r11
nop
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x549]
nop dword [rax]
xor byte [rax - 1], cl
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
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000f2a0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x548]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x60], r11
mov qword [rbp + 0x548], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000f290
mov r11, qword [rbp + 0x20]
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r11]
mov byte [rbp + 1], r15b
cmp rbx, 1
jbe 0x14000f310
movzx r11d, byte [rbx + r11 - 1]
jmp 0x14000f313
mov r11b, 0xae
mov byte [rbp], r11b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r15b
xor dl, r11b
inc eax
cmp eax, 8
jb 0x14000f330
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x18], dl
mov r13d, esi
lea r12, [rbx*8]
mov r14, rsi
mov esi, 8
mov r15, r9
mov r11d, 1
nop
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x550], rax
movzx eax, byte [rbp + r14 + 0x550]
xor byte [rbp + r14 + 0x548], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, esi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x551]
xor byte [rbp + r14 + 0x549], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r14 + 0x552]
xor byte [rbp + r14 + 0x54a], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x553]
xor byte [rbp + r14 + 0x54b], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r14 + 0x554]
xor byte [rbp + r14 + 0x54c], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x555]
xor byte [rbp + r14 + 0x54d], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x550], r8
movzx eax, byte [rbp + r14 + 0x556]
xor byte [rbp + r14 + 0x54e], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x548], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x550], r9
movzx eax, byte [rbp + r14 + 0x557]
xor byte [rbp + r14 + 0x54f], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x548]
mov qword [rbp + 0x548], rdx
add r13d, esi
lea r14, [r14 + 8]
cmp r13d, esi
jb 0x14000f360
movzx r11d, byte [rbp]
imul r8, r11, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x60]
xor r8, rdx
mov rdx, qword [rbp + 0x1a0]
cmp r8, rdx
mov esi, 0
je 0x14000f6bf
mov rdi, qword [0x1405f2610]
lea rcx, [rbp + 0x4a0]
call fcn.140002d90
lea rdx, [rbp + 0x180]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x1e8]
call fcn.140011080
nop
lea rdx, [rbp + 0x1e8]
lea rcx, [rbp + 0xb60]
call fcn.140011080
mov r12, qword [rbp + 0xb70]
lea rcx, [rbp + 0xb60]
call fcn.1400119f0
mov rbx, rax
lea r13, [0x140000000]
cmp byte [0x1405f2606], 0
jne 0x14000faf1
mov r14, rsi
movabs r15, 0x101010101010101
nop dword [rax]
lea rcx, [rbp + 0x5f0]
call fcn.140001700
mov rdi, qword [rbp + 0x5f0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2f30], rax
lea rcx, [rbp + 0xf8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f0], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
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 + 0x5f2e20], rax
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x5f0], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
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 + 0x5f2ea0], rax
add r14, 8
cmp r14, 0x80
jl 0x14000f720
lea rcx, [rbp + 0x558]
call fcn.140001700
mov edi, esi
lea r15, [0x1405f2619]
nop dword [rax]
mov r14, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f84b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 - 1], dl
mov r14, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f878
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15], dl
mov r14, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f8a4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 + 1], dl
mov r14, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f8d1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [r15 + 2], dl
add edi, 4
add r15, 4
cmp edi, 4
jb 0x14000f830
lea rcx, [rbp + 0xb8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x558], rdi
mov r14d, esi
lea r15, [0x1405f2e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f927
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f954
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f980
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f9ad
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000f9da
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fa07
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fa34
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x558]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fa61
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r14d, 8
add r15, 8
cmp r14d, 8
jae 0x14000fa8d
mov rdi, qword [rbp + 0x558]
jmp 0x14000f913
lea rcx, [rbp + 0xb0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x558], rdi
mov r14d, esi
lea r15, [0x1405f2f20]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000fac4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
inc r14d
inc r15
cmp r14d, 0xc
jae 0x14000faea
mov rdi, qword [rbp + 0x558]
jmp 0x14000fab0
mov byte [0x1405f2606], 1
test r12, r12
je 0x14000fc32
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f2618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000fb21
inc r8d
inc r9
cmp r8d, 4
jb 0x14000fb10
mov r8d, esi
lea r9, [0x1405f2e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2e21]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000fb81
inc r8d
inc r9
cmp r8d, 8
jb 0x14000fb70
mov r8d, esi
lea r9, [0x1405f2f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [rax*8 + 0x5f2f31]
add rdx, r13
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x14000fbe1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000fbd0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r12
jb 0x14000fb00
lea rcx, [rbp + 0x1e8]
call fcn.140002d30
nop
lea rdx, [rbp + 0xb60]
mov rcx, qword [rbp + 0x5e8]
call fcn.140011e00
lea rdx, [0x140011e20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0xb60]
call fcn.140002d30
nop
lea rcx, [rbp + 0x180]
call fcn.140002f10
cmp byte [rbp + 0x7e0], 0
jne 0x14000fe31
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14000fded
movdqa xmm5, xmmword [0x14044ee30]
movdqa xmm4, xmmword [0x14044ee70]
mov eax, 5
movd xmm6, eax
movdqa xmm7, xmmword [0x14044ee40]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [0x14044ee60]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x724]
mov edx, dword [rbp + 0x20]
nop dword [rax + rax]
movd xmm2, esi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044ee50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044ee50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add esi, 8
mov eax, esi
lea rcx, [rcx + 8]
cmp esi, 0xc0
jl 0x14000fce0
cmp eax, 0xc1
jge 0x14000fe31
movsxd rax, esi
lea rdi, [rbp + 0x720]
add rdi, rax
nop word [rax + rax]
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, sil
sub al, cl
add al, 0x34
xor byte [rdi], al
inc esi
lea rdi, [rdi + 1]
cmp esi, 0xc1
jl 0x14000fe00
lea rax, [rbp + 0x720]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov byte [rax + 0x40], cl
lea rdi, [rbp + 0x618]
cmp qword [rbp + 0x630], 0x10
cmovae rdi, qword [rbp + 0x618]
xor eax, eax
mov rcx, qword [rbp + 0x628]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x658]
cmp qword [rbp + 0x670], 0x10
cmovae rdi, qword [rbp + 0x658]
mov rcx, qword [rbp + 0x668]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x638]
cmp qword [rbp + 0x650], 0x10
cmovae rdi, qword [rbp + 0x638]
mov rcx, qword [rbp + 0x648]
rep stosb byte [rdi], al
lea rcx, [rbp + 0x658]
call fcn.140002d30
nop
lea rcx, [rbp + 0x638]
call fcn.140002d30
nop
lea rcx, [rbp + 0x698]
call fcn.140010bd0
mov r14, qword [rbp + 0x30]
mov rcx, r14
call fcn.140043840
nop
lea rcx, [rbp + 0x618]
call fcn.140002d30
call fcn.140043a70
mov ecx, 0x151a8d
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140010008
movabs rax, 0xe1ab0f116ec0553e
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x40], rax
movabs rax, 0xe5eda693ac543fce
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x48], rax
movabs rax, 0xe2bac8c6f8e5a5cf
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x50], rax
movabs rcx, 0xeb404d6767733226
mov qword [rbp + 0x30], rcx
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x58], rax
movabs rax, 0x88c76e781aa93b77
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0xb60], rax
movabs rax, 0x9782d4e1e9745ab4
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0xb68], rax
movabs rdx, 0xe2bac8c6f8e5a5e1
mov qword [rbp + 0x30], rdx
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0xb70], rax
mov qword [rbp + 0x30], rcx
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0xb78], rax
vmovdqu ymm0, ymmword [rbp + 0x40]
vpxor ymm1, ymm0, ymmword [rbp + 0xb60]
vmovdqa ymmword [rbp + 0x40], ymm1
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
lea rdx, [rbp + 0x40]
xor ecx, ecx
vzeroupper
call qword [sym.imp.USER32.dll_MessageBoxA]
nop
lea rcx, [rbp + 0x6c0]
call fcn.140004d20
xor eax, eax
mov rcx, qword [rbp + 0xc40]
xor rcx, rsp
call fcn.1401e0580
lea r11, [rsp + 0xcc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret