Function at 0x140006880
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0xd00
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1405eaab8]
xor rax, rsp
mov qword [rbp + 0xca0], rax
xor r12d, r12d
movabs rax, 0x7f4c873384f39659
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd0], rax
movabs rcx, 0xecab3c5bc0bc858
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0xd8], rax
movabs rax, 0x7f4ce658e692fa3b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc30], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0xc38], rax
movdqa xmm0, xmmword [rbp + 0xd0]
xorps xmm0, xmmword [rbp + 0xc30]
movdqa xmmword [rbp + 0xd0], xmm0
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x18], rax
lea rdx, [0x14043a9c0]
lea rcx, [rbp + 0xa0]
call fcn.14000bb34
nop
xor eax, eax
mov qword [rbp + 0xc0], rax
lea rax, [0x140002dd8]
lea r14d, [r12 + 1]
cmp byte [0x1405ee623], r12b
jne 0x140006978
mov qword [0x1405ee640], rax
mov byte [0x1405ee623], r14b
lea rdx, [0x14043a9c0]
lea rcx, [rbp + 0x458]
call fcn.14000bb34
mov qword [rbp], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
movabs rax, 0xfeeddccbbaa99887
lea rsi, [0x1405ee650]
lea r8, [0x1405eee48]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
cmp byte [0x1405ee625], r12b
jne 0x1400069f1
mov rdx, rax
mov rcx, rsi
mov rax, rdx
xor rax, r9
mov qword [rcx], rax
sub rdx, r10
add rcx, 8
cmp rcx, r8
jl 0x1400069d5
mov byte [0x1405ee625], r14b
movabs r13, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x590], r13
mov r10d, r12d
mov r8, r13
test rdi, rdi
je 0x140006a4f
mov r9, r11
mov edx, r12d
mov cl, byte [r9]
lea rax, [rbp + 0x590]
xor byte [rax], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x140006a1d
not cl
movzx eax, cl
mov r8, qword [rbp + 0x590]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x590], r8
add r10d, r14d
add r9, r14
movsxd rax, r10d
cmp rax, rdi
jb 0x140006a10
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r14
jbe 0x140006a69
mov r11b, byte [rdi + r11 - 1]
jmp 0x140006a6c
mov r11b, 0xae
mov qword [rbp + 0x10], rdi
mov qword [rbp + 0x560], rdi
mov eax, r12d
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r14d
cmp eax, 8
jb 0x140006a80
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x560], dl
mov r14b, r12b
mov r9d, r12d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r10 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x648], rsi
mov al, byte [rbp + r10 + 0x648]
xor byte [rbp + r10 + 0x590], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x10]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x560]
shl rdx, cl
xor rdx, qword [rbp + 0x590]
mov qword [rbp + 0x590], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x140006aaf
movzx eax, r11b
imul rax, rax, 0xff
not rax
mov rcx, r15
shl rcx, 7
sub rax, rcx
and rdx, r8
xor rax, rdx
mov qword [rbp + 0x590], rax
mov qword [rbp + 0xc0], rax
mov rdx, qword [rbp]
lea rcx, [rbp + 0xa0]
call fcn.14000ba40
nop
mov rcx, qword [rbp]
call fcn.140002ca4
nop
cmp byte [0x1405ee624], 0
movabs r13, 0xfae9e8d7c6b5a493
mov r12d, 1
jne 0x140006bab
lea rax, [0x140002dd8]
mov qword [0x1405ee640], rax
mov byte [0x1405ee624], r12b
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x2f0]
call fcn.14000bb34
nop
mov rdx, rax
lea rcx, [rbp + 0x240]
call fcn.14000bb68
mov r15, qword [rbp + 0x250]
lea rcx, [rbp + 0x240]
call fcn.14000b9bc
mov rsi, rax
lea r14, [0x140000000]
cmp byte [0x1405ee626], 0
jne 0x140006e18
xor ebx, ebx
movabs r13, 0x101010101010101
lea rcx, [rbp + 0x5f8]
call fcn.140001688
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
add rax, r12
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [rbx + r14 + 0x5eef60], rax
lea rcx, [rbp + 0x2a8]
call fcn.140001688
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
add rax, r12
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [rbx + r14 + 0x5eee50], rax
lea rcx, [rbp + 0x2b0]
call fcn.140001688
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
add rax, r12
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [rbx + r14 + 0x5eeed0], rax
add rbx, 8
cmp rbx, 0x80
jl 0x140006c04
lea rcx, [rbp + 0x5c8]
call fcn.140001688
xor edi, edi
lea rbx, [0x1405ee648]
movabs r13, 0xfae9e8d7c6b5a493
mov r14, qword [rbp + 0x5c8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006d38
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [rbx], dl
add edi, r12d
add rbx, r12
cmp edi, 4
jb 0x140006d1b
lea rcx, [rbp + 0x2b8]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5c8], rdi
xor ebx, ebx
lea r14, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006d89
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add ebx, r12d
add r14, r12
cmp ebx, 8
jae 0x140006daf
mov rdi, qword [rbp + 0x5c8]
jmp 0x140006d73
lea rcx, [rbp + 0x2c0]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5c8], rdi
xor ebx, ebx
lea r14, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006de4
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add ebx, r12d
add r14, r12
cmp ebx, 0xc
jae 0x140006e0a
mov rdi, qword [rbp + 0x5c8]
jmp 0x140006dce
mov byte [0x1405ee626], r12b
lea r14, [0x140000000]
test r15, r15
je 0x140006ee0
xor r9d, r9d
test r15, r15
je 0x140006ee0
xor r8d, r8d
mov cl, byte [rsi]
lea rdi, [0x1405ee648]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r14
xor cl, byte [rax]
mov byte [rsi], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140006e49
add r8d, r12d
add rdi, r12
cmp r8d, 4
jb 0x140006e39
xor r8d, r8d
lea rdi, [0x1405eee48]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eee50]
add rax, r14
xor cl, byte [rax]
mov byte [rsi], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140006e7e
add r8d, r12d
add rdi, r12
cmp r8d, 8
jb 0x140006e6e
xor r8d, r8d
lea rdi, [0x1405eef50]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r14
xor cl, byte [rax]
mov byte [rsi], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140006eb3
add r8d, r12d
add rdi, r12
cmp r8d, 0xc
jb 0x140006ea3
add r9d, r12d
add rsi, r12
movsxd rax, r9d
cmp rax, r15
jb 0x140006e2d
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x2c8]
call fcn.14000bb68
mov qword [rbp], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
lea rsi, [0x1405ee650]
cmp byte [0x1405ee625], 0
jne 0x140006f56
movabs r8, 0xfeeddccbbaa99887
mov rdx, rsi
lea rax, [0x1405eee48]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, r10
add rdx, 8
cmp rdx, rax
jl 0x140006f3a
mov byte [0x1405ee625], r12b
mov qword [rbp + 0x5a0], r13
xor r10d, r10d
mov r8, r13
test rdi, rdi
je 0x140006fa9
mov r9, r11
xor edx, edx
mov cl, byte [r9]
lea rax, [rbp + 0x5a0]
xor byte [rax], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140006f77
not cl
movzx eax, cl
mov r8, qword [rbp + 0x5a0]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x5a0], r8
add r10d, r12d
add r9, r12
movsxd rax, r10d
cmp rax, rdi
jb 0x140006f6b
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r12
jbe 0x140006fc3
mov r11b, byte [rdi + r11 - 1]
jmp 0x140006fc6
mov r11b, 0xae
mov qword [rbp + 0x10], rdi
mov qword [rbp + 0x560], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r12d
cmp eax, 8
jb 0x140006fd9
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x560], dl
xor r14b, r14b
xor r9d, r9d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r9 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x658], rsi
mov al, byte [rbp + r10 + 0x658]
xor byte [rbp + r10 + 0x5a0], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x10]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x560]
shl rdx, cl
xor rdx, qword [rbp + 0x5a0]
mov qword [rbp + 0x5a0], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x140007008
movzx eax, r11b
imul rax, rax, 0xff
not rax
mov rcx, r15
shl rcx, 7
sub rax, rcx
and rdx, r8
xor rax, rdx
mov qword [rbp + 0x5a0], rax
mov qword [rbp + 0xc0], rax
mov rdx, qword [rbp]
lea rcx, [rbp + 0xa0]
call fcn.14000ba40
nop
mov rcx, qword [rbp]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x240]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x2f0]
call fcn.140002ca4
nop
mov rdi, qword [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], 0
movabs r13, 0xfae9e8d7c6b5a493
jne 0x140007160
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x1405ee650]
lea rax, [0x1405eee48]
mov ebx, 0xffffffff
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, rbx
add rdx, 8
cmp rdx, rax
jl 0x140007140
mov eax, 1
mov byte [0x1405ee625], al
lea rbx, [0x1405ee650]
mov qword [rbp + 0x560], r13
xor r10d, r10d
mov r9, r13
lea r13d, [r10 + 1]
test rdi, rdi
je 0x1400071be
mov r8, r11
xor edx, edx
mov cl, byte [r8]
lea rax, [rbp + 0x560]
xor byte [rax], cl
add edx, r13d
add rax, r13
cmp edx, 8
jb 0x14000718c
not cl
movzx eax, cl
mov r9, qword [rbp + 0x560]
xor r9, qword [rbx + rax*8]
mov qword [rbp + 0x560], r9
add r10d, r13d
add r8, r13
movsxd rax, r10d
cmp rax, rdi
jb 0x140007180
movabs rbx, 0xaebdccdb0a192837
movzx r14d, byte [r11]
cmp rdi, r13
jbe 0x1400071d8
mov r11b, byte [rdi + r11 - 1]
jmp 0x1400071db
mov r11b, 0xae
mov qword [rbp + 0x10], rdi
mov qword [rbp], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r14b
xor dl, r11b
add eax, r13d
cmp eax, 8
jb 0x1400071eb
mov byte [rbp + 0x10], cl
mov byte [rbp], dl
xor sil, sil
xor r8d, r8d
lea r15, [rdi*8]
xor r10d, r10d
mov r12, rbx
mov eax, r8d
test r8d, r8d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r15
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rbx, rax
xor rbx, r12
mov qword [rbp + 0x548], rbx
mov al, byte [rbp + r10 + 0x548]
xor byte [rbp + r10 + 0x560], al
lea eax, [r8*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x10]
xor sil, r13b
cmovne rdx, qword [rbp]
shl rdx, cl
xor rdx, qword [rbp + 0x560]
mov qword [rbp + 0x560], rdx
add r8d, r13d
add r10, r13
cmp r8d, 8
jb 0x140007213
movzx eax, r11b
imul r8, rax, 0xff
not r8
mov rax, r14
shl rax, 7
sub r8, rax
and rdx, r9
xor r8, rdx
mov qword [rbp + 0x560], r8
mov rdx, qword [rbp + 0xc0]
cmp r8, rdx
movabs r12, 0xfeeddccbbaa99887
je 0x1400072ed
mov rdi, qword [0x1405ee640]
lea rcx, [rbp + 0x498]
call fcn.140002d00
lea rdx, [rbp + 0xa0]
mov rcx, rax
call rdi
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0x378]
call fcn.14000bb68
nop
lea rdx, [rbp + 0x378]
lea rcx, [rbp + 0x310]
call fcn.14000bb68
mov r15, qword [rbp + 0x320]
lea rcx, [rbp + 0x310]
call fcn.14000b9bc
mov rsi, rax
cmp byte [0x1405ee626], 0
jne 0x14000755f
xor ebx, ebx
lea r14, [0x140000000]
movabs r12, 0x101010101010101
lea rcx, [rbp + 0x600]
call fcn.140001688
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
add rax, r13
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [rbx + r14 + 0x5eef60], rax
lea rcx, [rbp + 0x340]
call fcn.140001688
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
add rax, r13
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [rbx + r14 + 0x5eee50], rax
lea rcx, [rbp + 0x2e8]
call fcn.140001688
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
add rax, r13
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [rbx + r14 + 0x5eeed0], rax
add rbx, 8
cmp rbx, 0x80
jl 0x14000734a
lea rcx, [rbp + 0x5d0]
call fcn.140001688
xor edi, edi
lea rbx, [0x1405ee648]
movabs r12, 0xfeeddccbbaa99887
mov r14, qword [rbp + 0x5d0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000747e
sub eax, r13d
or eax, 0xfffffff0
add eax, r13d
add al, r13b
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [rbx], dl
add edi, r13d
add rbx, r13
cmp edi, 4
jb 0x140007461
lea rcx, [rbp + 0x168]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5d0], rdi
xor ebx, ebx
lea r14, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400074cf
sub eax, r13d
or eax, 0xfffffff0
add eax, r13d
add al, r13b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add ebx, r13d
add r14, r13
cmp ebx, 8
jae 0x1400074f5
mov rdi, qword [rbp + 0x5d0]
jmp 0x1400074b9
lea rcx, [rbp + 0x198]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5d0], rdi
xor ebx, ebx
lea r14, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000752a
sub eax, r13d
or eax, 0xfffffff0
add eax, r13d
add al, r13b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add ebx, r13d
add r14, r13
cmp ebx, 0xc
jae 0x140007550
mov rdi, qword [rbp + 0x5d0]
jmp 0x140007514
mov r14d, 1
mov byte [0x1405ee626], r14b
jmp 0x140007565
mov r14d, 1
test r15, r15
je 0x140007634
xor r9d, r9d
test r15, r15
je 0x140007634
lea r10, [0x140000000]
xor r8d, r8d
mov cl, byte [rsi]
lea rdi, [0x1405ee648]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [rsi], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x14000759d
add r8d, r14d
add rdi, r14
cmp r8d, 4
jb 0x14000758d
xor r8d, r8d
lea rdi, [0x1405eee48]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eee50]
add rax, r10
xor cl, byte [rax]
mov byte [rsi], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x1400075d2
add r8d, r14d
add rdi, r14
cmp r8d, 8
jb 0x1400075c2
xor r8d, r8d
lea rdi, [0x1405eef50]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [rsi], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x140007607
add r8d, r14d
add rdi, r14
cmp r8d, 0xc
jb 0x1400075f7
add r9d, r14d
add rsi, r14
movsxd rax, r9d
cmp rax, r15
jb 0x140007581
lea rcx, [rbp + 0x378]
call fcn.140002ca4
lea rcx, [rbp + 0x310]
call fcn.140002ca4
nop
lea rcx, [rbp + 0xa0]
call fcn.140002e38
xor edx, edx
lea r8d, [rdx + 0x60]
lea rcx, [rbp + 0x730]
call fcn.1401dd2b6
lea rcx, [rbp + 0x730]
call fcn.1400046a8
nop
lea rcx, [rbp + 0x730]
call fcn.1400036b4
lea rcx, [rbp + 0x730]
call fcn.1400040e4
xor r15d, r15d
test al, al
je 0x1400076b6
mov dl, r14b
lea rcx, [rbp + 0x730]
call fcn.140003a88
test al, al
je 0x1400076b6
lea rcx, [rbp + 0x730]
call fcn.140003ce8
mov dword [rbp + 0x860], 0x348
mov edi, r15d
mov bl, r15b
xor edx, edx
xor r9d, r9d
lea r8, [rbp + 0x860]
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesW]
test eax, eax
je 0x140007745
test byte [rbp + 0x9a4], r14b
je 0x140007720
lea rdx, [rbp + 0x8a4]
lea rcx, [rbp + 0x688]
call fcn.14000b7b0
nop
cmp qword [rbp + 0x698], r15
je 0x140007714
lea rcx, [rbp + 0x688]
call fcn.140005044
test al, al
jne 0x140007727
lea rcx, [rbp + 0x688]
call fcn.14000c01c
add edi, r14d
mov edx, edi
jmp 0x1400076c8
mov bl, r14b
xor edx, edx
lea rcx, [rbp + 0x688]
call fcn.14000c080
nop
lea rcx, [rbp + 0x688]
call fcn.14000c01c
mov dl, r14b
lea rcx, [rbp + 0x730]
call fcn.14000393c
test bl, bl
jne 0x140007a0d
movabs rax, 0x1620873192fb9472
mov qword [rbp + 0x548], rax
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xbc0], rax
movabs rax, 0x7ca5c1b7f92bad22
mov qword [rbp + 0x548], rax
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xbc8], rax
movabs rax, 0x9e73a1568445dfdb
mov qword [rbp + 0x548], rax
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xbd0], rax
movabs rbx, 0xe04c360b5e5722e2
mov qword [rbp + 0x548], rbx
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xbd8], rax
movabs r12, 0x7f4ce658e692fa3b
mov qword [rbp + 0x548], r12
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc00], rax
movabs r14, 0xecab3c5bc0bc858
mov qword [rbp + 0x548], r14
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc08], rax
movabs rsi, 0x9e73a1568445dff5
mov qword [rbp + 0x548], rsi
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc10], rax
mov qword [rbp + 0x548], rbx
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc18], rax
vmovdqu ymm0, ymmword [rbp + 0xbc0]
vpxor ymm1, ymm0, ymmword [rbp + 0xc00]
vmovdqa ymmword [rbp + 0xbc0], ymm1
lea rax, [rbp + 0x2f0]
mov qword [rbp + 0x198], rax
movabs rax, 0x3d29813995e19f76
mov qword [rbp + 0x548], rax
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0x90], rax
movabs rax, 0xecab3c5bc4ab037
mov qword [rbp + 0x548], rax
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0x98], rax
mov qword [rbp + 0x548], r12
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xbe0], rax
mov qword [rbp + 0x548], r14
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xbe8], rax
vmovdqa xmm0, xmmword [rbp + 0x90]
vxorps xmm0, xmm0, xmmword [rbp + 0xbe0]
vmovdqa xmmword [rbp + 0x90], xmm0
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x2f0]
vzeroupper
call fcn.14000bb34
mov rdi, rax
movabs rax, 0x7f3ee63de6e1fa4e
mov qword [rbp + 0x548], rax
mov rcx, qword [rbp + 0x548]
mov qword [rbp + 0x60], rcx
movabs rax, 0xeaeb3ebbc39c86b
mov qword [rbp + 0x548], rax
mov rcx, qword [rbp + 0x548]
mov qword [rbp + 0x68], rcx
movabs rax, 0x9e73a1568429df99
mov qword [rbp + 0x548], rax
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x548], rbx
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x548], r12
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc00], rax
mov qword [rbp + 0x548], r14
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc08], rax
mov qword [rbp + 0x548], rsi
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc10], rax
mov qword [rbp + 0x548], rbx
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0xc18], rax
vmovdqu ymm0, ymmword [rbp + 0x60]
vpxor ymm1, ymm0, ymmword [rbp + 0xc00]
vmovdqu ymmword [rbp + 0x60], ymm1
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x2c8]
vzeroupper
call fcn.14000b7b0
nop
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
lea r9, [rbp + 0xbc0]
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call fcn.14000c6c4
jmp 0x14000ac30
call fcn.1400047f4
call fcn.1400064f4
mov edi, 3
mov ecx, edi
call fcn.14003f750
call fcn.14003f4f0
mov r13, rax
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14000ab8a
movabs rax, 0x4e63c96296e68e53
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x1c0], rcx
movabs rax, 0x3ae484f18d25f96c
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x1c8], rcx
movabs rax, 0xaf4a976cb376eedb
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x1d0], rax
movabs rax, 0xe02253672b320dd6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x1d8], rax
movabs rax, 0x7f4ce658e692fa3b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc80], rax
movabs rax, 0xecab3c5bc0bc858
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc88], rax
movabs rsi, 0x9e73a1568445dff5
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0xc90], rax
movabs rbx, 0xe04c360b5e5722e2
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0xc98], rax
vmovdqu ymm0, ymmword [rbp + 0x1c0]
vpxor ymm1, ymm0, ymmword [rbp + 0xc80]
vmovdqa ymmword [rbp + 0x1c0], ymm1
lea r8, [rbp + 0x1c0]
mov edx, 0x2712
mov rcx, r13
vzeroupper
call fcn.1400424c0
lea rcx, [rbp + 0x668]
call fcn.14000bba0
nop
lea r8, [0x1400064d0]
mov edx, 0x4e2b
mov rcx, r13
call fcn.1400424c0
lea r8, [rbp + 0x668]
mov edx, 0x2711
mov rcx, r13
call fcn.1400424c0
mov rcx, r13
call fcn.14003f560
mov ecx, edi
call fcn.14003f750
call fcn.14003f4f0
mov rdi, rax
mov qword [rbp + 0x18], rax
test rax, rax
je 0x14000ab7e
movabs rax, 0x4e63c96296e68e53
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x220], rcx
movabs rax, 0x3ae484f18d25f96c
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x228], rcx
movabs rax, 0xaf4a976cb376eedb
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x230], rax
movabs rax, 0xe024427831300dd6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x238], rax
movabs rax, 0x7f4ce658e692fa3b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc60], rax
movabs rax, 0xecab3c5bc0bc858
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc68], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0xc70], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0xc78], rax
vmovdqu ymm0, ymmword [rbp + 0x220]
vpxor ymm1, ymm0, ymmword [rbp + 0xc60]
vmovdqa ymmword [rbp + 0x220], ymm1
lea r8, [rbp + 0x220]
mov edx, 0x2712
mov rcx, rdi
vzeroupper
call fcn.1400424c0
lea rcx, [rbp + 0x608]
call fcn.14000bba0
nop
lea r8, [0x1400064d0]
mov edx, 0x4e2b
mov rcx, rdi
call fcn.1400424c0
lea r8, [rbp + 0x608]
mov edx, 0x2711
mov rcx, rdi
call fcn.1400424c0
mov rcx, rdi
call fcn.14003f560
test eax, eax
jne 0x14000ab60
movabs rax, 0x7f1ce619e6c6fa7c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x200], rax
movabs rax, 0xeafb3a6bc64c82a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x208], rax
movabs rax, 0x9e73a1568436df86
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x210], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x218], rax
movabs rax, 0x7f4ce658e692fa3b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc40], rax
movabs rdi, 0xecab3c5bc0bc858
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0xc48], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0xc50], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0xc58], rax
vmovdqu ymm0, ymmword [rbp + 0x200]
vpxor ymm1, ymm0, ymmword [rbp + 0xc40]
vmovdqu ymmword [rbp + 0x200], ymm1
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0x708]
vzeroupper
call fcn.14000b7b0
nop
lea rcx, [rbp + 0x708]
call fcn.140006320
mov dword [rbp + 0x5c0], eax
lea rdx, [0x14043a9c0]
test eax, eax
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
jne 0x140009a71
mov qword [rbp + 8], rax
movabs rax, 0x11258e3b94f39f68
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x100], rax
movabs rax, 0xecab3c59225e63f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x108], rax
movabs rax, 0x7f4ce658e692fa3b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc20], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0xc28], rax
movdqa xmm0, xmmword [rbp + 0x100]
xorps xmm0, xmmword [rbp + 0xc20]
movdqa xmmword [rbp + 0x100], xmm0
lea rax, [rbp + 0x20]
mov qword [rbp + 0x18], rax
lea rcx, [rbp + 0x20]
call fcn.14000bb34
nop
xor eax, eax
mov qword [rbp + 0x40], rax
cmp byte [0x1405ee623], r15b
jne 0x140007e5c
lea rax, [0x140002dd8]
mov qword [0x1405ee640], rax
mov byte [0x1405ee623], r14b
lea rdx, [0x14043a9c0]
lea rcx, [rbp + 0x478]
call fcn.14000bb34
mov qword [rbp + 0x550], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], r15b
jne 0x140007eca
mov r8, r12
lea rdx, [0x1405ee650]
lea rax, [0x1405eee48]
mov esi, 0xffffffff
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, rsi
add rdx, 8
cmp rdx, rax
jl 0x140007eae
mov byte [0x1405ee625], r14b
lea rsi, [0x1405ee650]
movabs r13, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x5b0], r13
mov r10d, r15d
mov r8, r13
test rdi, rdi
je 0x140007f2f
mov r9, r11
mov edx, r15d
mov cl, byte [r9]
lea rax, [rbp + 0x5b0]
xor byte [rax], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x140007efd
not cl
movzx eax, cl
mov r8, qword [rbp + 0x5b0]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x5b0], r8
add r10d, r14d
add r9, r14
movsxd rax, r10d
cmp rax, rdi
jb 0x140007ef0
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r14
jbe 0x140007f49
mov r11b, byte [rdi + r11 - 1]
jmp 0x140007f4c
mov r11b, 0xae
mov qword [rbp], rdi
mov qword [rbp + 0x10], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r14d
cmp eax, 8
jb 0x140007f5c
mov byte [rbp], cl
mov byte [rbp + 0x10], dl
xor r14b, r14b
xor r9d, r9d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r9 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x650], rsi
mov al, byte [rbp + r10 + 0x650]
xor byte [rbp + r10 + 0x5b0], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x5b0]
mov qword [rbp + 0x5b0], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x140007f88
movzx eax, r11b
imul rax, rax, 0xff
not rax
mov rcx, r15
shl rcx, 7
sub rax, rcx
and r8, rdx
xor rax, r8
mov qword [rbp + 0x5b0], rax
mov qword [rbp + 0x40], rax
mov rdx, qword [rbp + 0x550]
lea rcx, [rbp + 0x20]
call fcn.14000ba40
nop
mov rcx, qword [rbp + 0x550]
call fcn.140002ca4
nop
cmp byte [0x1405ee624], 0
movabs r13, 0xfae9e8d7c6b5a493
mov r12d, 1
jne 0x14000807d
lea rax, [0x140002dd8]
mov qword [0x1405ee640], rax
mov byte [0x1405ee624], r12b
lea rdx, [rbp + 0x100]
lea rcx, [rbp + 0x3b8]
call fcn.14000bb34
nop
mov rdx, rax
lea rcx, [rbp + 0x260]
call fcn.14000bb68
mov r15, qword [rbp + 0x270]
lea rcx, [rbp + 0x260]
call fcn.14000b9bc
mov r14, rax
cmp byte [0x1405ee626], 0
jne 0x1400082e1
xor ebx, ebx
lea rsi, [0x140000000]
movabs r13, 0x101010101010101
lea rcx, [rbp + 0x578]
call fcn.140001688
mov rdi, qword [rbp + 0x578]
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
add rax, r12
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [rbx + rsi + 0x5eef60], rax
lea rcx, [rbp + 0x330]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x578], 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
add rax, r12
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [rbx + rsi + 0x5eee50], rax
lea rcx, [rbp + 0x338]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x578], 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
add rax, r12
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [rbx + rsi + 0x5eeed0], rax
add rbx, 8
cmp rbx, 0x80
jl 0x1400080d6
lea rcx, [rbp + 0x5d8]
call fcn.140001688
xor edi, edi
lea rbx, [0x1405ee648]
movabs r13, 0xfae9e8d7c6b5a493
mov rsi, qword [rbp + 0x5d8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000820a
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rsi
cqo
idiv rcx
mov byte [rbx], dl
add edi, r12d
add rbx, r12
cmp edi, 4
jb 0x1400081ed
lea rcx, [rbp + 0x370]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5d8], rdi
xor ebx, ebx
lea rsi, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000825b
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rsi], dl
add ebx, r12d
add rsi, r12
cmp ebx, 8
jae 0x140008280
mov rdi, qword [rbp + 0x5d8]
jmp 0x140008245
lea rcx, [rbp + 0x348]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5d8], rdi
xor ebx, ebx
lea rsi, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400082b5
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rsi], dl
add ebx, r12d
add rsi, r12
cmp ebx, 0xc
jae 0x1400082da
mov rdi, qword [rbp + 0x5d8]
jmp 0x14000829f
mov byte [0x1405ee626], r12b
test r15, r15
je 0x1400083b4
xor r9d, r9d
test r15, r15
je 0x1400083b4
lea r10, [0x140000000]
xor r8d, r8d
mov cl, byte [r14]
lea rdi, [0x1405ee648]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [r14], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x14000831a
add r8d, r12d
add rdi, r12
cmp r8d, 4
jb 0x14000830a
xor r8d, r8d
lea rdi, [0x1405eee48]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eee50]
add rax, r10
xor cl, byte [rax]
mov byte [r14], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140008350
add r8d, r12d
add rdi, r12
cmp r8d, 8
jb 0x140008340
xor r8d, r8d
lea rdi, [0x1405eef50]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [r14], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140008386
add r8d, r12d
add rdi, r12
cmp r8d, 0xc
jb 0x140008376
add r9d, r12d
add r14, r12
movsxd rax, r9d
cmp rax, r15
jb 0x1400082fd
lea rdx, [rbp + 0x260]
lea rcx, [rbp + 0x438]
call fcn.14000bb68
mov qword [rbp + 0x550], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], 0
jne 0x140008429
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x1405ee650]
lea rax, [0x1405eee48]
mov esi, 0xffffffff
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, rsi
add rdx, 8
cmp rdx, rax
jl 0x14000840d
mov byte [0x1405ee625], r12b
lea rsi, [0x1405ee650]
mov qword [rbp + 0x5a8], r13
xor r10d, r10d
mov r8, r13
test rdi, rdi
je 0x140008483
mov r9, r11
xor edx, edx
mov cl, byte [r9]
lea rax, [rbp + 0x5a8]
xor byte [rax], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140008451
not cl
movzx eax, cl
mov r8, qword [rbp + 0x5a8]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x5a8], r8
add r10d, r12d
add r9, r12
movsxd rax, r10d
cmp rax, rdi
jb 0x140008445
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r12
jbe 0x14000849d
mov r11b, byte [r11 + rdi - 1]
jmp 0x1400084a0
mov r11b, 0xae
mov qword [rbp], rdi
mov qword [rbp + 0x10], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r12d
cmp eax, 8
jb 0x1400084b0
mov byte [rbp], cl
mov byte [rbp + 0x10], dl
xor r14b, r14b
xor r9d, r9d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r9 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x660], rsi
mov al, byte [rbp + r10 + 0x660]
xor byte [rbp + r10 + 0x5a8], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x5a8]
mov qword [rbp + 0x5a8], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x1400084dc
movzx eax, r11b
imul rax, rax, 0xff
not rax
mov rcx, r15
shl rcx, 7
sub rax, rcx
and rdx, r8
xor rax, rdx
mov qword [rbp + 0x5a8], rax
mov qword [rbp + 0x40], rax
mov rdx, qword [rbp + 0x550]
lea rcx, [rbp + 0x20]
call fcn.14000ba40
nop
mov rcx, qword [rbp + 0x550]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x260]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x3b8]
call fcn.140002ca4
nop
mov rdi, qword [rbp + 0x30]
lea rcx, [rbp + 0x20]
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], 0
movabs r13, 0xfae9e8d7c6b5a493
jne 0x140008627
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x1405ee650]
lea rax, [0x1405eee48]
mov ebx, 0xffffffff
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, rbx
add rdx, 8
cmp rdx, rax
jl 0x140008607
mov eax, 1
mov byte [0x1405ee625], al
lea rbx, [0x1405ee650]
mov qword [rbp + 0x550], r13
xor r10d, r10d
mov r9, r13
lea r13d, [r10 + 1]
test rdi, rdi
je 0x140008685
mov r8, r11
xor edx, edx
mov cl, byte [r8]
lea rax, [rbp + 0x550]
xor byte [rax], cl
add edx, r13d
add rax, r13
cmp edx, 8
jb 0x140008653
not cl
movzx eax, cl
mov r9, qword [rbp + 0x550]
xor r9, qword [rbx + rax*8]
mov qword [rbp + 0x550], r9
add r10d, r13d
add r8, r13
movsxd rax, r10d
cmp rax, rdi
jb 0x140008647
movabs rbx, 0xaebdccdb0a192837
movzx r14d, byte [r11]
cmp rdi, r13
jbe 0x14000869f
mov r11b, byte [r11 + rdi - 1]
jmp 0x1400086a2
mov r11b, 0xae
mov qword [rbp], rdi
mov qword [rbp + 0x10], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r14b
xor dl, r11b
add eax, r13d
cmp eax, 8
jb 0x1400086b2
mov byte [rbp], cl
mov byte [rbp + 0x10], dl
xor sil, sil
xor r8d, r8d
lea r15, [rdi*8]
xor r10d, r10d
mov r12, rbx
mov eax, r8d
test r8d, r8d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r15
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rbx, rax
xor rbx, r12
mov qword [rbp + 0x5e8], rbx
mov al, byte [rbp + r10 + 0x5e8]
xor byte [rbp + r10 + 0x550], al
lea eax, [r8*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp]
xor sil, r13b
cmovne rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x550]
mov qword [rbp + 0x550], rdx
add r8d, r13d
add r10, r13
cmp r8d, 8
jb 0x1400086da
movzx eax, r11b
imul r8, rax, 0xff
not r8
mov rax, r14
shl rax, 7
sub r8, rax
and r9, rdx
xor r8, r9
mov qword [rbp + 0x550], r8
mov rdx, qword [rbp + 0x40]
cmp r8, rdx
movabs r12, 0xfeeddccbbaa99887
je 0x1400087ae
mov rdi, qword [0x1405ee640]
lea rcx, [rbp + 0x4d0]
call fcn.140002d00
lea rdx, [rbp + 0x20]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x398]
call fcn.14000bb68
nop
lea rdx, [rbp + 0x398]
lea rcx, [rbp + 0xe0]
call fcn.14000bb68
mov r15, qword [rbp + 0xf0]
lea rcx, [rbp + 0xe0]
call fcn.14000b9bc
mov r14, rax
cmp byte [0x1405ee626], 0
jne 0x140008a13
xor ebx, ebx
lea rsi, [0x140000000]
movabs r12, 0x101010101010101
lea rcx, [rbp + 0x558]
call fcn.140001688
mov rdi, qword [rbp + 0x558]
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
add rax, r13
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [rbx + rsi + 0x5eef60], rax
lea rcx, [rbp + 0x350]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x558], 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
add rax, r13
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [rbx + rsi + 0x5eee50], rax
lea rcx, [rbp + 0x358]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x558], 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
add rax, r13
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [rbx + rsi + 0x5eeed0], rax
add rbx, 8
cmp rbx, 0x80
jl 0x140008808
lea rcx, [rbp + 0x5e0]
call fcn.140001688
xor edi, edi
lea rbx, [0x1405ee648]
movabs r12, 0xfeeddccbbaa99887
mov rsi, qword [rbp + 0x5e0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000893c
sub eax, r13d
or eax, 0xfffffff0
add eax, r13d
add al, r13b
movsx rcx, al
mov rax, rsi
cqo
idiv rcx
mov byte [rbx], dl
add edi, r13d
add rbx, r13
cmp edi, 4
jb 0x14000891f
lea rcx, [rbp + 0x1a0]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5e0], rdi
xor ebx, ebx
lea rsi, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000898d
sub eax, r13d
or eax, 0xfffffff0
add eax, r13d
add al, r13b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rsi], dl
add ebx, r13d
add rsi, r13
cmp ebx, 8
jae 0x1400089b2
mov rdi, qword [rbp + 0x5e0]
jmp 0x140008977
lea rcx, [rbp + 0x88]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x5e0], rdi
xor ebx, ebx
lea rsi, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400089e7
sub eax, r13d
or eax, 0xfffffff0
add eax, r13d
add al, r13b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rsi], dl
add ebx, r13d
add rsi, r13
cmp ebx, 0xc
jae 0x140008a0c
mov rdi, qword [rbp + 0x5e0]
jmp 0x1400089d1
mov byte [0x1405ee626], r13b
test r15, r15
je 0x140008ae6
xor r9d, r9d
test r15, r15
je 0x140008ae6
lea r10, [0x140000000]
xor r8d, r8d
mov cl, byte [r14]
lea rdi, [0x1405ee648]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [r14], cl
add edx, r13d
add rax, r13
cmp edx, 8
jb 0x140008a4c
add r8d, r13d
add rdi, r13
cmp r8d, 4
jb 0x140008a3c
xor r8d, r8d
lea rdi, [0x1405eee48]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eee50]
add rax, r10
xor cl, byte [rax]
mov byte [r14], cl
add edx, r13d
add rax, r13
cmp edx, 8
jb 0x140008a82
add r8d, r13d
add rdi, r13
cmp r8d, 8
jb 0x140008a72
xor r8d, r8d
lea rdi, [0x1405eef50]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [r14], cl
add edx, r13d
add rax, r13
cmp edx, 8
jb 0x140008ab8
add r8d, r13d
add rdi, r13
cmp r8d, 0xc
jb 0x140008aa8
add r9d, r13d
add r14, r13
movsxd rax, r9d
cmp rax, r15
jb 0x140008a2f
lea rcx, [rbp + 0x398]
call fcn.140002ca4
nop
lea rdx, [rbp + 0xe0]
mov rcx, qword [rbp + 8]
call fcn.14000d2f8
lea rdx, [0x14000d30c]
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 + 0xe0]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x20]
call fcn.140002e38
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdi, qword [rax + 0x30]
movsxd rcx, dword [rdi + 0x3c]
mov r9d, dword [rcx + rdi + 0x88]
add r9, rdi
cmp r9, rdi
je 0x140008ba6
mov r8d, dword [r9 + 0x18]
test r8d, r8d
je 0x140008ba6
mov ebx, dword [r9 + 0x20]
mov r15d, 0xffffffff
add r8d, r15d
lea rcx, [rbx + r8*4]
mov edx, dword [rcx + rdi]
add rdx, rdi
mov r10d, 0x814c0921
mov cl, byte [rdx]
add rdx, r13
test cl, cl
je 0x140008ba1
movsx ecx, cl
xor ecx, r10d
imul r10d, ecx, 0x1000193
mov cl, byte [rdx]
add rdx, r13
test cl, cl
jne 0x140008b82
cmp r10d, 0x4781a644
je 0x140008bab
test r8d, r8d
jne 0x140008b66
mov rax, qword [rax]
jmp 0x140008b3b
mov ecx, dword [r9 + 0x1c]
add rcx, rdi
mov eax, dword [r9 + 0x24]
add rax, rdi
movzx eax, word [rax + r8*2]
mov edx, dword [rcx + rax*4]
add rdx, rdi
mov ecx, 0x166d
call rdx
mov r13, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov qword [rbp + 0x550], r13
movabs rax, 0x1022c63092e1957c
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x60], rax
movabs rax, 0x20aeddb0d36de82c
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x68], rax
movabs rsi, 0x9e73a1568445dff5
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0x70], rax
movabs rbx, 0xe04c360b5e5722e2
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x78], rax
movabs rax, 0x7f4ce658e692fa3b
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbc0], rax
movabs rax, 0xecab3c5bc0bc858
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbc8], rax
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbd0], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbd8], rax
vmovdqu ymm0, ymmword [rbp + 0x60]
vpxor ymm1, ymm0, ymmword [rbp + 0xbc0]
vmovdqa ymmword [rbp + 0x60], ymm1
lea rax, [rbp + 0x20]
mov qword [rbp + 0x88], rax
lea rdx, [0x14043a9c0]
lea rcx, [rbp + 0x20]
vzeroupper
call fcn.14000bb34
nop
xor eax, eax
mov qword [rbp + 0x40], rax
lea r14d, [rax + 1]
cmp byte [0x1405ee623], al
jne 0x140008cd9
lea rax, [0x140002dd8]
mov qword [0x1405ee640], rax
mov byte [0x1405ee623], r14b
lea rdx, [0x14043a9c0]
lea rcx, [rbp + 0x280]
call fcn.14000bb34
mov qword [rbp + 8], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
lea rsi, [0x1405ee650]
cmp byte [0x1405ee625], 0
jne 0x140008d42
mov r8, r12
mov rdx, rsi
lea rax, [0x1405eee48]
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, r15
add rdx, 8
cmp rdx, rax
jl 0x140008d26
mov byte [0x1405ee625], r14b
movabs r8, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x540], r8
xor r10d, r10d
test rdi, rdi
je 0x140008d9c
mov r9, r11
xor edx, edx
mov cl, byte [r9]
lea rax, [rbp + 0x540]
xor byte [rax], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x140008d6a
not cl
movzx eax, cl
mov r8, qword [rbp + 0x540]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x540], r8
add r10d, r14d
add r9, r14
movsxd rax, r10d
cmp rax, rdi
jb 0x140008d5e
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r14
jbe 0x140008db6
mov r11b, byte [rdi + r11 - 1]
jmp 0x140008db9
mov r11b, 0xae
mov qword [rbp + 0x558], rdi
mov qword [rbp + 0x578], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r14d
cmp eax, 8
jb 0x140008dcf
mov byte [rbp + 0x558], cl
mov byte [rbp + 0x578], dl
xor r14b, r14b
xor r9d, r9d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r9 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x598], rsi
mov al, byte [rbp + r10 + 0x598]
xor byte [rbp + r10 + 0x540], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x558]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x578]
shl rdx, cl
xor rdx, qword [rbp + 0x540]
mov qword [rbp + 0x540], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x140008e01
movzx eax, r11b
imul rcx, rax, 0xff
not rcx
mov rax, r15
shl rax, 7
sub rcx, rax
and rdx, r8
xor rcx, rdx
mov qword [rbp + 0x40], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x20]
call fcn.14000ba40
nop
mov rcx, qword [rbp + 8]
call fcn.140002ca4
nop
mov r12d, 1
cmp byte [0x1405ee624], 0
jne 0x140008ee9
lea rax, [0x140002dd8]
mov qword [0x1405ee640], rax
mov byte [0x1405ee624], r12b
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0xc00]
call fcn.14000bb34
nop
mov rdx, rax
lea rcx, [rbp + 0xbc0]
call fcn.14000bb68
mov r15, qword [rbp + 0xbd0]
lea rcx, [rbp + 0xbc0]
call fcn.14000b9bc
mov rbx, rax
cmp byte [0x1405ee626], 0
jne 0x140009142
xor esi, esi
lea r14, [0x140000000]
movabs r13, 0x101010101010101
lea rcx, [rbp + 0x570]
call fcn.140001688
mov rdi, qword [rbp + 0x570]
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
add rax, r12
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [rsi + r14 + 0x5eef60], rax
lea rcx, [rbp + 0x5b8]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x570], 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
add rax, r12
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [rsi + r14 + 0x5eee50], rax
lea rcx, [rbp + 0x5f0]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x570], 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
add rax, r12
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [rsi + r14 + 0x5eeed0], rax
add rsi, 8
cmp rsi, 0x80
jl 0x140008f3f
lea rcx, [rbp + 0x580]
call fcn.140001688
xor edi, edi
lea rsi, [0x1405ee648]
mov r14, qword [rbp + 0x580]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009069
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [rsi], dl
add edi, r12d
add rsi, r12
cmp edi, 4
jb 0x14000904c
lea rcx, [rbp + 0x170]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x580], rdi
xor esi, esi
lea r14, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400090ba
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 8
jae 0x1400090e0
mov rdi, qword [rbp + 0x580]
jmp 0x1400090a4
lea rcx, [rbp + 0x160]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x580], rdi
xor esi, esi
lea r14, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009115
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 0xc
jae 0x14000913b
mov rdi, qword [rbp + 0x580]
jmp 0x1400090ff
mov byte [0x1405ee626], r12b
test r15, r15
je 0x140009211
xor r9d, r9d
test r15, r15
je 0x140009211
lea r10, [0x140000000]
xor r8d, r8d
mov cl, byte [rbx]
lea rdi, [0x1405ee648]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [rbx], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x14000917a
add r8d, r12d
add rdi, r12
cmp r8d, 4
jb 0x14000916a
xor r8d, r8d
lea rdi, [0x1405eee48]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eee50]
add rax, r10
xor cl, byte [rax]
mov byte [rbx], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x1400091af
add r8d, r12d
add rdi, r12
cmp r8d, 8
jb 0x14000919f
xor r8d, r8d
lea rdi, [0x1405eef50]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [rbx], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x1400091e4
add r8d, r12d
add rdi, r12
cmp r8d, 0xc
jb 0x1400091d4
add r9d, r12d
add rbx, r12
movsxd rax, r9d
cmp rax, r15
jb 0x14000915e
lea rdx, [rbp + 0xbc0]
lea rcx, [rbp + 0x1e0]
call fcn.14000bb68
mov qword [rbp + 8], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], 0
jne 0x140009283
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x1405ee650]
lea rax, [0x1405eee48]
mov esi, 0xffffffff
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, rsi
add rdx, 8
cmp rdx, rax
jl 0x140009267
mov byte [0x1405ee625], r12b
lea rsi, [0x1405ee650]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x540], rax
xor r10d, r10d
mov r8, rax
test rdi, rdi
je 0x1400092e7
mov r9, r11
xor edx, edx
mov cl, byte [r9]
lea rax, [rbp + 0x540]
xor byte [rax], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x1400092b5
not cl
movzx eax, cl
mov r8, qword [rbp + 0x540]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x540], r8
add r10d, r12d
add r9, r12
movsxd rax, r10d
cmp rax, rdi
jb 0x1400092a9
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r12
jbe 0x140009301
mov r11b, byte [rdi + r11 - 1]
jmp 0x140009304
mov r11b, 0xae
mov qword [rbp + 0x558], rdi
mov qword [rbp + 0x578], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r12d
cmp eax, 8
jb 0x14000931a
mov byte [rbp + 0x558], cl
mov byte [rbp + 0x578], dl
xor r14b, r14b
xor r9d, r9d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r9 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x598], rsi
mov al, byte [rbp + r10 + 0x598]
xor byte [rbp + r10 + 0x540], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x558]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x578]
shl rdx, cl
xor rdx, qword [rbp + 0x540]
mov qword [rbp + 0x540], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x14000934c
movzx eax, r11b
imul rcx, rax, 0xff
not rcx
mov rax, r15
shl rax, 7
sub rcx, rax
and rdx, r8
xor rcx, rdx
mov qword [rbp + 0x40], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x20]
call fcn.14000ba40
nop
mov rcx, qword [rbp + 8]
call fcn.140002ca4
nop
lea rcx, [rbp + 0xbc0]
call fcn.140002ca4
nop
lea rcx, [rbp + 0xc00]
call fcn.140002ca4
nop
mov rdi, qword [rbp + 0x30]
lea rcx, [rbp + 0x20]
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], 0
jne 0x14000948f
lea rdx, [0x1405ee650]
movabs rax, 0xfeeddccbbaa99887
lea r8, [0x1405eee48]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
mov rcx, rax
xor rcx, r9
mov qword [rdx], rcx
sub rax, r10
add rdx, 8
cmp rdx, r8
jl 0x14000946b
mov r12d, 1
mov byte [0x1405ee625], r12b
jmp 0x140009495
mov r12d, 1
lea r10, [0x1405ee650]
movabs r14, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x540], r14
xor r9d, r9d
test rdi, rdi
je 0x1400094f9
mov r8, r11
xor edx, edx
mov cl, byte [r8]
lea rax, [rbp + 0x540]
xor byte [rax], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x1400094c4
not cl
movzx eax, cl
mov r13, qword [rbp + 0x540]
xor r13, qword [r10 + rax*8]
mov qword [rbp + 0x540], r13
add r9d, r12d
add r8, r12
movsxd rax, r9d
cmp rax, rdi
jb 0x1400094b8
mov r14, r13
movabs r10, 0xaebdccdb0a192837
movzx ebx, byte [r11]
cmp rdi, r12
jbe 0x140009513
mov r15b, byte [rdi + r11 - 1]
jmp 0x140009516
mov r15b, 0xae
mov qword [rbp + 0x558], rdi
mov qword [rbp + 0x578], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, bl
xor dl, r15b
add eax, r12d
cmp eax, 8
jb 0x14000952c
mov byte [rbp + 0x558], cl
mov byte [rbp + 0x578], dl
xor r11b, r11b
xor r8d, r8d
lea rsi, [rdi*8]
xor r9d, r9d
mov r13, r10
mov eax, r8d
test r8d, r8d
cmove eax, r12d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor r10, rax
xor r10, r13
mov qword [rbp + 0x598], r10
mov al, byte [rbp + r9 + 0x598]
xor byte [rbp + r9 + 0x540], al
lea eax, [r8*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x558]
xor r11b, r12b
cmovne rdx, qword [rbp + 0x578]
shl rdx, cl
xor rdx, qword [rbp + 0x540]
mov qword [rbp + 0x540], rdx
add r8d, r12d
add r9, r12
cmp r8d, 8
jb 0x140009559
movzx eax, r15b
imul r8, rax, 0xff
not r8
mov rax, rbx
shl rax, 7
sub r8, rax
and r14, rdx
xor r8, r14
mov rdx, qword [rbp + 0x40]
cmp r8, rdx
mov r13, qword [rbp + 0x550]
je 0x14000962d
mov rdi, qword [0x1405ee640]
lea rcx, [rbp + 0x110]
call fcn.140002d00
lea rdx, [rbp + 0x20]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x178]
call fcn.14000bb68
nop
lea rdx, [rbp + 0x178]
lea rcx, [rbp + 0xe0]
call fcn.14000bb68
mov r15, qword [rbp + 0xf0]
lea rcx, [rbp + 0xe0]
call fcn.14000b9bc
mov rbx, rax
cmp byte [0x1405ee626], 0
jne 0x140009891
xor esi, esi
lea r14, [0x140000000]
movabs r13, 0x101010101010101
lea rcx, [rbp + 0x568]
call fcn.140001688
mov rdi, qword [rbp + 0x568]
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
add rax, r12
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [rsi + r14 + 0x5eef60], rax
lea rcx, [rbp + 0x148]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x568], 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
add rax, r12
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [rsi + r14 + 0x5eee50], rax
lea rcx, [rbp + 0x150]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x568], 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
add rax, r12
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [rsi + r14 + 0x5eeed0], rax
add rsi, 8
cmp rsi, 0x80
jl 0x140009687
lea rcx, [rbp + 0x588]
call fcn.140001688
xor edi, edi
lea rsi, [0x1405ee648]
mov r13, qword [rbp + 0x550]
mov r14, qword [rbp + 0x588]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400097b8
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [rsi], dl
add edi, r12d
add rsi, r12
cmp edi, 4
jb 0x14000979b
lea rcx, [rbp + 0x158]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x588], rdi
xor esi, esi
lea r14, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009809
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 8
jae 0x14000982f
mov rdi, qword [rbp + 0x588]
jmp 0x1400097f3
lea rcx, [rbp + 0x80]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x588], rdi
xor esi, esi
lea r14, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009864
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 0xc
jae 0x14000988a
mov rdi, qword [rbp + 0x588]
jmp 0x14000984e
mov byte [0x1405ee626], r12b
test r15, r15
je 0x140009962
xor r10d, r10d
test r15, r15
je 0x140009962
lea r11, [0x140000000]
xor edx, edx
mov cl, byte [rbx]
lea rdi, [0x1405ee648]
xor r8d, r8d
movzx eax, byte [rdi]
lea r9, [r11 + 0x5eef60]
lea r9, [r9 + rax*8]
xor cl, byte [r9]
mov byte [rbx], cl
add r8d, r12d
add r9, r12
cmp r8d, 8
jb 0x1400098c9
add edx, r12d
add rdi, r12
cmp edx, 4
jb 0x1400098b8
xor edx, edx
lea r9, [0x1405eee48]
xor edi, edi
movzx eax, byte [r9]
lea r8, [r11 + 0x5eee50]
lea r8, [r8 + rax*8]
xor cl, byte [r8]
mov byte [rbx], cl
add edi, r12d
add r8, r12
cmp edi, 8
jb 0x1400098ff
add edx, r12d
add r9, r12
cmp edx, 8
jb 0x1400098ee
xor edx, edx
lea rdi, [0x1405eef50]
xor r8d, r8d
movzx eax, byte [rdi]
lea r9, [r11 + 0x5eef60]
lea r9, [r9 + rax*8]
xor cl, byte [r9]
mov byte [rbx], cl
add r8d, r12d
add r9, r12
cmp r8d, 8
jb 0x140009934
add edx, r12d
add rdi, r12
cmp edx, 0xc
jb 0x140009923
add r10d, r12d
add rbx, r12
movsxd rax, r10d
cmp rax, r15
jb 0x1400098ad
lea rcx, [rbp + 0x178]
call fcn.140002ca4
nop
lea rdx, [rbp + 0xe0]
mov rcx, r13
call fcn.14000d2f8
lea rdx, [0x14000d30c]
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 + 0xe0]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x20]
call fcn.140002e38
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdi, qword [rax + 0x30]
movsxd rcx, dword [rdi + 0x3c]
mov r9d, dword [rcx + rdi + 0x88]
add r9, rdi
cmp r9, rdi
je 0x140009a20
mov r8d, dword [r9 + 0x18]
test r8d, r8d
je 0x140009a20
mov ebx, dword [r9 + 0x20]
mov ecx, 0xffffffff
add r8d, ecx
lea rcx, [rdi + r8*4]
mov edx, dword [rcx + rbx]
add rdx, rdi
mov r10d, 0x6c506540
mov cl, byte [rdx]
add rdx, r12
test cl, cl
je 0x140009a1b
movsx ecx, cl
xor ecx, r10d
imul r10d, ecx, 0x1000193
mov cl, byte [rdx]
add rdx, r12
test cl, cl
jne 0x1400099fc
cmp r10d, 0x63b312d3
je 0x140009a25
test r8d, r8d
jne 0x1400099db
mov rax, qword [rax]
jmp 0x1400099b6
mov ecx, dword [r9 + 0x1c]
add rcx, rdi
mov eax, dword [r9 + 0x24]
add rax, rdi
movzx eax, word [rax + r8*2]
mov edx, dword [rcx + rax*4]
add rdx, rdi
mov ecx, 0x648ca05d
call rdx
nop
lea rcx, [rbp + 0x708]
call fcn.14000c01c
nop
lea rcx, [rbp + 0x608]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x668]
call fcn.140002ca4
jmp 0x14000ac30
mov qword [rbp + 0x5e8], rax
movabs rax, 0x11258e3b94f39f68
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbe0], rax
movabs rax, 0xecab3c59225e63f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xbe8], rax
movabs rax, 0x7f4ce658e692fa3b
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc00], rax
mov qword [rbp + 8], rdi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xc08], rax
movdqa xmm0, xmmword [rbp + 0xbe0]
xorps xmm0, xmmword [rbp + 0xc00]
movdqa xmmword [rbp + 0xbe0], xmm0
lea rax, [rbp + 0x110]
mov qword [rbp + 0x80], rax
lea rcx, [rbp + 0x110]
call fcn.14000bb34
nop
xor eax, eax
mov qword [rbp + 0x130], rax
cmp byte [0x1405ee623], r15b
jne 0x140009b2b
lea rax, [0x140002dd8]
mov qword [0x1405ee640], rax
mov byte [0x1405ee623], r14b
lea rdx, [0x14043a9c0]
lea rcx, [rbp + 0x3d8]
call fcn.14000bb34
mov qword [rbp + 8], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], r15b
jne 0x140009b96
mov r8, r12
lea rdx, [0x1405ee650]
lea rax, [0x1405eee48]
mov esi, 0xffffffff
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, rsi
add rdx, 8
cmp rdx, rax
jl 0x140009b7a
mov byte [0x1405ee625], r14b
lea rsi, [0x1405ee650]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x540], rax
mov r10d, r15d
mov r8, rax
test rdi, rdi
je 0x140009bfb
mov r9, r11
mov edx, r15d
mov cl, byte [r9]
lea rax, [rbp + 0x540]
xor byte [rax], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x140009bc9
not cl
movzx eax, cl
mov r8, qword [rbp + 0x540]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x540], r8
add r10d, r14d
add r9, r14
movsxd rax, r10d
cmp rax, rdi
jb 0x140009bbc
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r14
jbe 0x140009c15
mov r11b, byte [rdi + r11 - 1]
jmp 0x140009c18
mov r11b, 0xae
mov qword [rbp + 0x568], rdi
mov qword [rbp + 0x570], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r14d
cmp eax, 8
jb 0x140009c2e
mov byte [rbp + 0x568], cl
mov byte [rbp + 0x570], dl
xor r14b, r14b
xor r9d, r9d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r9 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x5b8], rsi
mov al, byte [rbp + r10 + 0x5b8]
xor byte [rbp + r10 + 0x540], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x568]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x570]
shl rdx, cl
xor rdx, qword [rbp + 0x540]
mov qword [rbp + 0x540], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x140009c60
movzx eax, r11b
imul rcx, rax, 0xff
not rcx
mov rax, r15
shl rax, 7
sub rcx, rax
and r8, rdx
xor rcx, r8
mov qword [rbp + 0x130], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x110]
call fcn.14000ba40
nop
mov rcx, qword [rbp + 8]
call fcn.140002ca4
nop
mov r12d, 1
cmp byte [0x1405ee624], 0
jne 0x140009d4e
lea rax, [0x140002dd8]
mov qword [0x1405ee640], rax
mov byte [0x1405ee624], r12b
lea rdx, [rbp + 0xbe0]
lea rcx, [rbp + 0x418]
call fcn.14000bb34
nop
mov rdx, rax
lea rcx, [rbp + 0x1e0]
call fcn.14000bb68
mov r15, qword [rbp + 0x1f0]
lea rcx, [rbp + 0x1e0]
call fcn.14000b9bc
mov rbx, rax
cmp byte [0x1405ee626], 0
jne 0x140009faa
xor esi, esi
lea r14, [0x140000000]
movabs r13, 0x101010101010101
lea rcx, [rbp + 0x5f0]
call fcn.140001688
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
add rax, r12
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [rsi + r14 + 0x5eef60], rax
lea rcx, [rbp + 0x150]
call fcn.140001688
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
add rax, r12
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [rsi + r14 + 0x5eee50], rax
lea rcx, [rbp + 0x148]
call fcn.140001688
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
add rax, r12
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [rsi + r14 + 0x5eeed0], rax
add rsi, 8
cmp rsi, 0x80
jl 0x140009da7
lea rcx, [rbp + 0x588]
call fcn.140001688
xor edi, edi
lea rsi, [0x1405ee648]
mov r14, qword [rbp + 0x588]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009ed1
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [rsi], dl
add edi, r12d
add rsi, r12
cmp edi, 4
jb 0x140009eb4
lea rcx, [rbp + 0x160]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x588], rdi
xor esi, esi
lea r14, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009f22
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 8
jae 0x140009f48
mov rdi, qword [rbp + 0x588]
jmp 0x140009f0c
lea rcx, [rbp + 0x170]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x588], rdi
xor esi, esi
lea r14, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009f7d
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 0xc
jae 0x140009fa3
mov rdi, qword [rbp + 0x588]
jmp 0x140009f67
mov byte [0x1405ee626], r12b
test r15, r15
je 0x14000a079
xor r9d, r9d
test r15, r15
je 0x14000a079
lea r10, [0x140000000]
xor r8d, r8d
mov cl, byte [rbx]
lea rdi, [0x1405ee648]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [rbx], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x140009fe2
add r8d, r12d
add rdi, r12
cmp r8d, 4
jb 0x140009fd2
xor r8d, r8d
lea rdi, [0x1405eee48]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eee50]
add rax, r10
xor cl, byte [rax]
mov byte [rbx], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x14000a017
add r8d, r12d
add rdi, r12
cmp r8d, 8
jb 0x14000a007
xor r8d, r8d
lea rdi, [0x1405eef50]
xor edx, edx
movzx eax, byte [rdi]
lea rax, [rax*8 + 0x5eef60]
add rax, r10
xor cl, byte [rax]
mov byte [rbx], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x14000a04c
add r8d, r12d
add rdi, r12
cmp r8d, 0xc
jb 0x14000a03c
add r9d, r12d
add rbx, r12
movsxd rax, r9d
cmp rax, r15
jb 0x140009fc6
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x3f8]
call fcn.14000bb68
mov qword [rbp + 8], rax
mov rdi, qword [rax + 0x10]
mov rcx, rax
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], 0
jne 0x14000a0eb
movabs r8, 0xfeeddccbbaa99887
lea rdx, [0x1405ee650]
lea rax, [0x1405eee48]
mov esi, 0xffffffff
movabs r9, 0xababdbf33353735b
mov rcx, r8
xor rcx, r9
mov qword [rdx], rcx
sub r8, rsi
add rdx, 8
cmp rdx, rax
jl 0x14000a0cf
mov byte [0x1405ee625], r12b
lea rsi, [0x1405ee650]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x540], rax
xor r10d, r10d
mov r8, rax
test rdi, rdi
je 0x14000a14f
mov r9, r11
xor edx, edx
mov cl, byte [r9]
lea rax, [rbp + 0x540]
xor byte [rax], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x14000a11d
not cl
movzx eax, cl
mov r8, qword [rbp + 0x540]
xor r8, qword [rsi + rax*8]
mov qword [rbp + 0x540], r8
add r10d, r12d
add r9, r12
movsxd rax, r10d
cmp rax, rdi
jb 0x14000a111
movabs rsi, 0xaebdccdb0a192837
movzx r15d, byte [r11]
cmp rdi, r12
jbe 0x14000a169
mov r11b, byte [rdi + r11 - 1]
jmp 0x14000a16c
mov r11b, 0xae
mov qword [rbp + 0x568], rdi
mov qword [rbp + 0x570], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, r15b
xor dl, r11b
add eax, r12d
cmp eax, 8
jb 0x14000a182
mov byte [rbp + 0x568], cl
mov byte [rbp + 0x570], dl
xor r14b, r14b
xor r9d, r9d
lea r12, [rdi*8]
xor r10d, r10d
mov rbx, rsi
lea r13d, [r9 + 1]
mov eax, r9d
test r9d, r9d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor rsi, rax
xor rsi, rbx
mov qword [rbp + 0x5b8], rsi
mov al, byte [rbp + r10 + 0x5b8]
xor byte [rbp + r10 + 0x540], al
lea eax, [r9*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x568]
xor r14b, r13b
cmovne rdx, qword [rbp + 0x570]
shl rdx, cl
xor rdx, qword [rbp + 0x540]
mov qword [rbp + 0x540], rdx
add r9d, r13d
add r10, r13
cmp r9d, 8
jb 0x14000a1b4
movzx eax, r11b
imul rcx, rax, 0xff
not rcx
mov rax, r15
shl rax, 7
sub rcx, rax
and rdx, r8
xor rcx, rdx
mov qword [rbp + 0x130], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x110]
call fcn.14000ba40
nop
mov rcx, qword [rbp + 8]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x1e0]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x418]
call fcn.140002ca4
nop
mov rdi, qword [rbp + 0x120]
lea rcx, [rbp + 0x110]
call fcn.14000b9bc
mov r11, rax
cmp byte [0x1405ee625], 0
jne 0x14000a303
lea rdx, [0x1405ee650]
movabs rax, 0xfeeddccbbaa99887
lea r8, [0x1405eee48]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
mov rcx, rax
xor rcx, r9
mov qword [rdx], rcx
sub rax, r10
add rdx, 8
cmp rdx, r8
jl 0x14000a2df
mov r12d, 1
mov byte [0x1405ee625], r12b
jmp 0x14000a309
mov r12d, 1
lea r10, [0x1405ee650]
movabs r14, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x540], r14
xor r9d, r9d
test rdi, rdi
je 0x14000a36d
mov r8, r11
xor edx, edx
mov cl, byte [r8]
lea rax, [rbp + 0x540]
xor byte [rax], cl
add edx, r12d
add rax, r12
cmp edx, 8
jb 0x14000a338
not cl
movzx eax, cl
mov r13, qword [rbp + 0x540]
xor r13, qword [r10 + rax*8]
mov qword [rbp + 0x540], r13
add r9d, r12d
add r8, r12
movsxd rax, r9d
cmp rax, rdi
jb 0x14000a32c
mov r14, r13
movabs r10, 0xaebdccdb0a192837
movzx ebx, byte [r11]
cmp rdi, r12
jbe 0x14000a387
mov r15b, byte [rdi + r11 - 1]
jmp 0x14000a38a
mov r15b, 0xae
mov qword [rbp + 0x568], rdi
mov qword [rbp + 0x570], rdi
xor eax, eax
mov cl, dil
mov dl, dil
xor cl, bl
xor dl, r15b
add eax, r12d
cmp eax, 8
jb 0x14000a3a0
mov byte [rbp + 0x568], cl
mov byte [rbp + 0x570], dl
xor r11b, r11b
xor r8d, r8d
lea rsi, [rdi*8]
xor r9d, r9d
mov r13, r10
mov eax, r8d
test r8d, r8d
cmove eax, r12d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov rax, rdi
shl rax, cl
xor r10, rax
xor r10, r13
mov qword [rbp + 0x5b8], r10
mov al, byte [rbp + r9 + 0x5b8]
xor byte [rbp + r9 + 0x540], al
lea eax, [r8*8]
mov edx, 8
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rbp + 0x568]
xor r11b, r12b
cmovne rdx, qword [rbp + 0x570]
shl rdx, cl
xor rdx, qword [rbp + 0x540]
mov qword [rbp + 0x540], rdx
add r8d, r12d
add r9, r12
cmp r8d, 8
jb 0x14000a3cd
movzx eax, r15b
imul r8, rax, 0xff
not r8
mov rax, rbx
shl rax, 7
sub r8, rax
and r14, rdx
xor r8, r14
mov rdx, qword [rbp + 0x130]
cmp r8, rdx
mov r13, qword [rbp + 0x10]
je 0x14000a4a4
mov rdi, qword [0x1405ee640]
lea rcx, [rbp + 0x508]
call fcn.140002d00
lea rdx, [rbp + 0x110]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x280]
call fcn.14000bb68
nop
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x178]
call fcn.14000bb68
mov r15, qword [rbp + 0x188]
lea rcx, [rbp + 0x178]
call fcn.14000b9bc
mov rbx, rax
cmp byte [0x1405ee626], 0
jne 0x14000a710
xor esi, esi
lea r14, [0x140000000]
movabs r13, 0x101010101010101
lea rcx, [rbp + 0x598]
call fcn.140001688
mov rdi, qword [rbp + 0x598]
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
add rax, r12
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [rsi + r14 + 0x5eef60], rax
lea rcx, [rbp + 0x2a0]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x598], 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
add rax, r12
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [rsi + r14 + 0x5eee50], rax
lea rcx, [rbp + 0x368]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x598], 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
add rax, r12
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [rsi + r14 + 0x5eeed0], rax
add rsi, 8
cmp rsi, 0x80
jl 0x14000a501
lea rcx, [rbp + 0x580]
call fcn.140001688
xor edi, edi
lea rsi, [0x1405ee648]
mov r13, qword [rbp + 0x10]
mov r14, qword [rbp + 0x580]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a62f
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, r14
cqo
idiv rcx
mov byte [rsi], dl
add edi, r12d
add rsi, r12
cmp edi, 4
jb 0x14000a612
lea rcx, [rbp + 0x360]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x580], rdi
xor esi, esi
lea r14, [0x1405eee48]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a680
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 8
jae 0x14000a6a6
mov rdi, qword [rbp + 0x580]
jmp 0x14000a66a
lea rcx, [rbp + 0x90]
call fcn.140001688
mov rdi, qword [rax]
mov qword [rbp + 0x580], rdi
xor esi, esi
lea r14, [0x1405eef50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a6db
sub eax, r12d
or eax, 0xfffffff0
add eax, r12d
add al, r12b
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r14], dl
add esi, r12d
add r14, r12
cmp esi, 0xc
jae 0x14000a701
mov rdi, qword [rbp + 0x580]
jmp 0x14000a6c5
mov r14d, 1
mov byte [0x1405ee626], r14b
jmp 0x14000a716
mov r14d, 1
test r15, r15
je 0x14000a7e5
xor r10d, r10d
test r15, r15
je 0x14000a7e5
lea r11, [0x140000000]
xor edx, edx
mov cl, byte [rbx]
lea r9, [0x1405ee648]
xor edi, edi
movzx eax, byte [r9]
lea r8, [r11 + 0x5eef60]
lea r8, [r8 + rax*8]
xor cl, byte [r8]
mov byte [rbx], cl
add edi, r14d
add r8, r14
cmp edi, 8
jb 0x14000a74e
add edx, r14d
add r9, r14
cmp edx, 4
jb 0x14000a73d
xor edi, edi
lea r8, [0x1405eee48]
xor edx, edx
movzx eax, byte [r8]
lea rax, [rax*8 + 0x5eee50]
add rax, r11
xor cl, byte [rax]
mov byte [rbx], cl
add edx, r14d
add rax, r14
cmp edx, 8
jb 0x14000a783
add edi, r14d
add r8, r14
cmp edi, 8
jb 0x14000a772
xor edx, edx
lea rdi, [0x1405eef50]
xor r8d, r8d
movzx eax, byte [rdi]
lea r9, [r11 + 0x5eef60]
lea r9, [r9 + rax*8]
xor cl, byte [r9]
mov byte [rbx], cl
add r8d, r14d
add r9, r14
cmp r8d, 8
jb 0x14000a7b7
add edx, r14d
add rdi, r14
cmp edx, 0xc
jb 0x14000a7a6
add r10d, r14d
add rbx, r14
movsxd rax, r10d
cmp rax, r15
jb 0x14000a732
lea rcx, [rbp + 0x280]
call fcn.140002ca4
nop
lea rdx, [rbp + 0x178]
mov rcx, qword [rbp + 0x5e8]
call fcn.14000d2f8
lea rdx, [0x14000d30c]
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 + 0x178]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x110]
call fcn.140002e38
call fcn.1400047f4
lea rcx, [rbp + 0x790]
lea rax, [0x140000000]
lea rax, [rax + 0x43aef0]
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
mov edx, 0x80
add rcx, rdx
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
add rax, rdx
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
mov al, byte [rax + 0x40]
mov byte [rcx + 0x40], al
xor r15d, r15d
mov edi, r15d
lea r8, [rbp + 0x790]
lea esi, [rdx + 0x41]
mov r12d, 0x4ec4ec4f
mov eax, r12d
mul edi
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
mov al, dil
sub al, cl
add al, 0x33
xor byte [r8], al
add edi, r14d
add r8, r14
cmp edi, esi
jl 0x14000a8cc
lea rdx, [rbp + 0x790]
lea rcx, [rbp + 0x628]
call fcn.14000bb34
nop
lea r8, [rbp + 0x608]
lea rdx, [rbp + 0x628]
lea rcx, [rbp + 0x6e8]
call fcn.14000577c
nop
lea r8, [rbp + 0x668]
lea rdx, [rbp + 0x628]
lea rcx, [rbp + 0x6c8]
call fcn.14000577c
nop
mov rbx, qword [rbp + 0x638]
lea rcx, [rbp + 0x628]
call fcn.14000b9bc
mov rdi, rax
xor eax, eax
mov rcx, rbx
rep stosb byte [rdi], al
mov rbx, qword [rbp + 0x618]
lea rcx, [rbp + 0x608]
call fcn.14000b9bc
mov rdi, rax
xor eax, eax
mov rcx, rbx
rep stosb byte [rdi], al
mov rbx, qword [rbp + 0x678]
lea rcx, [rbp + 0x668]
call fcn.14000b9bc
mov rdi, rax
xor eax, eax
mov rcx, rbx
rep stosb byte [rdi], al
cmp byte [rbp + 0x850], r15b
jne 0x14000a9c4
mov edi, r15d
lea r8, [rbp + 0x790]
mov eax, r12d
mul edi
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
mov al, dil
sub al, cl
add al, 0x33
xor byte [r8], al
add edi, r14d
add r8, r14
cmp edi, esi
jl 0x14000a9a2
mov r8, rsi
xor edx, edx
lea rcx, [rbp + 0x790]
call fcn.1401dd2b6
call fcn.1400047f4
lea rax, [rbp + 0x5c0]
mov qword [rbp + 0xbc0], rax
lea rax, [rbp + 0x6e8]
mov qword [rbp + 0xbc8], rax
lea rdx, [rbp + 0xbc0]
lea rcx, [rbp + 0x6a8]
call fcn.14000df4c
nop
lea rax, [rbp + 0x5c0]
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x6c8]
mov qword [rbp + 0x68], rax
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x6b8]
call fcn.14000dfd4
nop
lea rcx, [rbp + 0x6a8]
call fcn.1400016fc
lea rcx, [rbp + 0x6b8]
call fcn.1400016fc
cmp byte [rbp + 0x850], r15b
jne 0x14000aa7e
mov edi, r15d
lea r9, [rbp + 0x790]
mov eax, r12d
mul edi
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
mov al, dil
sub al, cl
add al, 0x33
xor byte [r9], al
add edi, r14d
add r9, r14
cmp edi, esi
jl 0x14000aa5c
mov r8, rsi
xor edx, edx
lea rcx, [rbp + 0x790]
call fcn.1401dd2b6
mov rbx, qword [rbp + 0x618]
lea rcx, [rbp + 0x608]
call fcn.14000b9bc
mov rdi, rax
xor eax, eax
mov rcx, rbx
rep stosb byte [rdi], al
mov rbx, qword [rbp + 0x6f8]
lea rcx, [rbp + 0x6e8]
call fcn.14000b9bc
mov rdi, rax
xor eax, eax
mov rcx, rbx
rep stosb byte [rdi], al
mov rbx, qword [rbp + 0x6d8]
lea rcx, [rbp + 0x6c8]
call fcn.14000b9bc
mov rdi, rax
xor eax, eax
mov rcx, rbx
rep stosb byte [rdi], al
mov rbx, qword [rbp + 0x638]
lea rcx, [rbp + 0x628]
call fcn.14000b9bc
mov rdi, rax
xor eax, eax
mov rcx, rbx
rep stosb byte [rdi], al
call fcn.14000669c
nop
cmp dword [rbp + 0x6c0], r15d
je 0x14000ab19
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
cmp dword [rbp + 0x6b0], r15d
je 0x14000ab29
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
lea rcx, [rbp + 0x6c8]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x6e8]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x628]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x708]
call fcn.14000c01c
mov rdi, qword [rbp + 0x18]
mov rcx, rdi
call fcn.14003f4c0
mov rcx, r13
call fcn.14003f4c0
nop
lea rcx, [rbp + 0x608]
call fcn.140002ca4
nop
lea rcx, [rbp + 0x668]
call fcn.140002ca4
call fcn.14003f6f0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdi, qword [rax + 0x30]
movsxd rcx, dword [rdi + 0x3c]
mov r8d, dword [rcx + rdi + 0x88]
add r8, rdi
cmp r8, rdi
je 0x14000ac0a
mov r9d, dword [r8 + 0x18]
test r9d, r9d
je 0x14000ac0a
mov ebx, dword [r8 + 0x20]
mov ecx, 0xffffffff
add r9d, ecx
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + rdi]
add rdx, rdi
mov r10d, 0xda99bacf
mov cl, byte [rdx]
add rdx, r14
test cl, cl
je 0x14000ac05
movsx ecx, cl
xor ecx, r10d
imul r10d, ecx, 0x1000193
mov cl, byte [rdx]
add rdx, r14
test cl, cl
jne 0x14000abe6
cmp r10d, 0x4feab8d2
je 0x14000ac0f
test r9d, r9d
jne 0x14000abc5
mov rax, qword [rax]
jmp 0x14000aba0
mov ecx, dword [r8 + 0x1c]
add rcx, rdi
mov eax, dword [r8 + 0x24]
add rax, rdi
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, rdi
mov ecx, 0x648ca05d
call rdx
nop
lea rcx, [rbp + 0x730]
call fcn.1400046f8
xor eax, eax
mov rcx, qword [rbp + 0xca0]
xor rcx, rsp
call fcn.1401dc200
lea r11, [rsp + 0xd00]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret