Function at 0x140010080
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute command
Execute shellcode via indirect call
Generate random numbers using a mersenne twister

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0xb1c0
call fcn.140018680
sub rsp, rax
call fcn.140017050
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x1534], 0xffffffff
mov dword [rsp + 0x1b4], eax
mov r13d, 1
mov edx, r13d
nop
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x1b4], eax
inc rdx
cmp rdx, 0x270
jb 0x1400100c0
mov dword [rsp + 0x1b0], 0x270
mov dword [rsp + 0xb208], 0
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010114
imul rax, rax, 0x64
jmp 0x14001012f
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea r14, [rax + 0x5f5e100]
mov r12d, 0x80000000
nop dword [rax]
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x14001015c
imul rax, rax, 0x64
jmp 0x140010177
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x140010375
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x30], rax
mov esi, 0x186a0
nop
lea rcx, [rsp + 0x28]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x1400101d8
nop dword [rax + rax]
lea rcx, [rsp + 0x28]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x1400101c0
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x30]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x140010238
cmp ecx, 0x64
jae 0x140010238
nop word [rax + rax]
lea rcx, [rsp + 0x30]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010220
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x38]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov ebx, edi
cmp ecx, 0xc9
jae 0x1400102a9
cmp ecx, 0x64
jae 0x1400102a9
lea rcx, [rsp + 0x38]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010291
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x40], rax
lea rcx, [rsp + 0x40]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x14001031b
cmp ecx, 0x64
jae 0x14001031b
lea rcx, [rsp + 0x40]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010303
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, r13
jne 0x1400101a0
jmp 0x140010140
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
lea rcx, [rsp + 0x158]
call fcn.14000dc10
nop
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x28c4], 0xffffffff
mov dword [rsp + 0x1544], eax
mov rdx, r13
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x1544], eax
inc rdx
cmp rdx, 0x270
jb 0x1400103b0
mov dword [rsp + 0x1540], 0x270
mov dword [rsp + 0xb208], 0
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010404
imul rax, rax, 0x64
jmp 0x14001041f
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea r14, [rax + 0x5f5e100]
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010442
imul rax, rax, 0x64
jmp 0x14001045d
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x140010656
lea rax, [rsp + 0x1540]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x1540]
mov qword [rsp + 0x50], rax
mov esi, 0x186a0
lea rcx, [rsp + 0x48]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x1400104b8
nop dword [rax]
lea rcx, [rsp + 0x48]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x1400104a0
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x50]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x140010518
cmp ecx, 0x64
jae 0x140010518
nop word [rax + rax]
lea rcx, [rsp + 0x50]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010500
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x1540]
mov qword [rsp + 0x58], rax
lea rcx, [rsp + 0x58]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov ebx, edi
cmp ecx, 0xc9
jae 0x140010589
cmp ecx, 0x64
jae 0x140010589
lea rcx, [rsp + 0x58]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010571
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x1540]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x60]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x1400105fb
cmp ecx, 0x64
jae 0x1400105fb
lea rcx, [rsp + 0x60]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x1400105e3
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, 1
jne 0x140010485
jmp 0x140010426
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
lea ecx, [rax - 1]
imul ecx, eax
cmp qword [rsp + 0x168], 0
jne 0x140010967
test ecx, ecx
js 0x140010967
lea rcx, str._n____Please_enter_your_key____
call fcn.140005de0
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x3c54], 0xffffffff
mov dword [rsp + 0x28d4], eax
mov rdx, r13
nop dword [rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x28d4], eax
inc rdx
cmp rdx, 0x270
jb 0x1400106b0
mov dword [rsp + 0x28d0], 0x270
mov dword [rsp + 0xb208], 0
lea rcx, [rsp + 0x128]
call fcn.14000e890
mov r14, qword [rsp + 0x128]
add r14, 0x5f5e100
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010720
imul rax, rax, 0x64
jmp 0x14001073b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x140010946
lea rax, [rsp + 0x28d0]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x28d0]
mov qword [rsp + 0x70], rax
mov esi, 0x186a0
lea rcx, [rsp + 0x68]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x140010798
nop dword [rax + rax]
lea rcx, [rsp + 0x68]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010780
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x70]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x1400107f8
cmp ecx, 0x64
jae 0x1400107f8
nop word [rax + rax]
lea rcx, [rsp + 0x70]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x1400107e0
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x28d0]
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x78]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov ebx, edi
cmp ecx, 0xc9
jae 0x140010869
cmp ecx, 0x64
jae 0x140010869
lea rcx, [rsp + 0x78]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010851
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x28d0]
mov qword [rsp + 0x80], rax
lea rcx, [rsp + 0x80]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x1400108eb
cmp ecx, 0x64
jae 0x1400108eb
nop dword [rax]
lea rcx, [rsp + 0x80]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x1400108d0
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, 1
jne 0x140010763
jmp 0x140010704
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
lea rdx, [rsp + 0x158]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.140008cf0
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
lea r15d, [rax - 1]
imul r15d, eax
test r15d, r15d
jle 0x140010aca
mov eax, dword [str.PXF69]
mov dword [rsp + 0xb210], eax
cmp byte [0x14001c4d7], 0
je 0x140010a80
cmp dword [0x140029910], 2
jl 0x140010a38
movdqa xmm3, xmmword [0x14001c980]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14001c9e0]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14001c9e0]
shufps xmm2, xmm0, 0xdd
mov ecx, 4
movd xmm0, ecx
psrad xmm2, xmm0
mov ecx, 0x1f
movd xmm0, ecx
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14001c9a0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14001c9c0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.3333333333333333]
movd xmm0, eax
pxor xmm2, xmm0
movd dword [rsp + 0xb210], xmm2
jmp 0x140010a80
lea r9, [rsp + 0xb210]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140010a50
lea rcx, [rsp + 0xb210]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
movzx eax, word [0x14001c4d8]
mov word [rsp + 0xb200], ax
movzx eax, byte [0x14001c4da]
mov byte [rsp + 0xb200], 0xa
xor byte [rsp + 0xb201], 0x34
xor al, 0x35
mov byte [rsp + 0xb202], al
lea rcx, [rsp + 0xb200]
call fcn.140005de0
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x4fe4], 0xffffffff
mov dword [rsp + 0x3c64], eax
mov rdx, r13
nop dword [rax]
nop dword [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x3c64], eax
inc rdx
cmp rdx, 0x270
jb 0x140010af0
mov dword [rsp + 0x3c60], 0x270
mov dword [rsp + 0xb208], 0
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010b44
imul rax, rax, 0x64
jmp 0x140010b5f
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea r14, [rax + 0x5f5e100]
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010b82
imul rax, rax, 0x64
jmp 0x140010b9d
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x140010dc6
lea rax, [rsp + 0x3c60]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0x3c60]
mov qword [rsp + 0x90], rax
mov esi, 0x186a0
nop dword [rax + rax]
lea rcx, [rsp + 0x88]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x140010c0b
nop dword [rax + rax]
lea rcx, [rsp + 0x88]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010bf0
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x90]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x140010c6b
cmp ecx, 0x64
jae 0x140010c6b
lea rcx, [rsp + 0x90]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010c50
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x3c60]
mov qword [rsp + 0x98], rax
lea rcx, [rsp + 0x98]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov ebx, edi
cmp ecx, 0xc9
jae 0x140010ceb
cmp ecx, 0x64
jae 0x140010ceb
nop word [rax + rax]
lea rcx, [rsp + 0x98]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010cd0
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x3c60]
mov qword [rsp + 0xa0], rax
lea rcx, [rsp + 0xa0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x140010d6b
cmp ecx, 0x64
jae 0x140010d6b
nop dword [rax + rax]
lea rcx, [rsp + 0xa0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010d50
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, 1
jne 0x140010bd0
jmp 0x140010b66
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
lea rcx, [rsp + 0x158]
call fcn.140002500
test al, al
je 0x140011bd3
test r15d, r15d
js 0x140011bd3
lea rcx, [rsp + 0x158]
call fcn.14000d470
nop
cmp qword [rsp + 0x168], 0
jne 0x140010e17
lea rcx, [rsp + 0x158]
call fcn.14000d470
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x6374], 0xffffffff
mov dword [rsp + 0x4ff4], eax
mov rdx, r13
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x4ff4], eax
inc rdx
cmp rdx, 0x270
jb 0x140010e31
mov dword [rsp + 0x4ff0], 0x270
mov dword [rsp + 0xb208], 0
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010e85
imul rax, rax, 0x64
jmp 0x140010ea0
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea r14, [rax + 0x5f5e100]
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140010ec3
imul rax, rax, 0x64
jmp 0x140010ede
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x140011106
lea rax, [rsp + 0x4ff0]
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0x4ff0]
mov qword [rsp + 0xb0], rax
mov esi, 0x186a0
nop dword [rax]
lea rcx, [rsp + 0xa8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x140010f4b
nop dword [rax + rax]
lea rcx, [rsp + 0xa8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010f30
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0xb0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x140010fab
cmp ecx, 0x64
jae 0x140010fab
lea rcx, [rsp + 0xb0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140010f90
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x4ff0]
mov qword [rsp + 0xb8], rax
lea rcx, [rsp + 0xb8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov ebx, edi
cmp ecx, 0xc9
jae 0x14001102b
cmp ecx, 0x64
jae 0x14001102b
nop word [rax + rax]
lea rcx, [rsp + 0xb8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011010
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x4ff0]
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0xc0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x1400110ab
cmp ecx, 0x64
jae 0x1400110ab
nop dword [rax + rax]
lea rcx, [rsp + 0xc0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011090
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, 1
jne 0x140010f10
jmp 0x140010ea7
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
mov ecx, 0x320
call qword [sym.imp.KERNEL32.dll_Sleep]
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x7704], 0xffffffff
mov dword [rsp + 0x6384], eax
mov rdx, r13
nop dword [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x6384], eax
inc rdx
cmp rdx, 0x270
jb 0x140011140
mov dword [rsp + 0x6380], 0x270
mov dword [rsp + 0xb208], 0
lea rcx, [rsp + 0x130]
call fcn.14000e890
mov r14, qword [rsp + 0x130]
add r14, 0x5f5e100
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x1400111b0
imul rax, rax, 0x64
jmp 0x1400111cb
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x1400113f6
lea rax, [rsp + 0x6380]
mov qword [rsp + 0xc8], rax
lea rax, [rsp + 0x6380]
mov qword [rsp + 0xd0], rax
mov esi, 0x186a0
nop dword [rax]
lea rcx, [rsp + 0xc8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x14001123b
nop dword [rax + rax]
lea rcx, [rsp + 0xc8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011220
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0xd0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x14001129b
cmp ecx, 0x64
jae 0x14001129b
lea rcx, [rsp + 0xd0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011280
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x6380]
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0xd8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov ebx, edi
cmp ecx, 0xc9
jae 0x14001131b
cmp ecx, 0x64
jae 0x14001131b
nop word [rax + rax]
lea rcx, [rsp + 0xd8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011300
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x6380]
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0xe0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x14001139b
cmp ecx, 0x64
jae 0x14001139b
nop dword [rax + rax]
lea rcx, [rsp + 0xe0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011380
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, 1
jne 0x140011200
jmp 0x140011194
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
call fcn.140017050
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x8a94], 0xffffffff
mov dword [rsp + 0x7714], eax
mov rdx, r13
nop dword [rax]
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x7714], eax
inc rdx
cmp rdx, 0x270
jb 0x140011430
mov dword [rsp + 0x7710], 0x270
mov dword [rsp + 0xb208], 0
lea rcx, [rsp + 0x138]
call fcn.14000e890
mov r14, qword [rsp + 0x138]
add r14, 0x5f5e100
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x1400114a0
imul rax, rax, 0x64
jmp 0x1400114bb
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x1400116e6
lea rax, [rsp + 0x7710]
mov qword [rsp + 0xe8], rax
lea rax, [rsp + 0x7710]
mov qword [rsp + 0xf0], rax
mov esi, 0x186a0
nop dword [rax]
lea rcx, [rsp + 0xe8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x14001152b
nop dword [rax + rax]
lea rcx, [rsp + 0xe8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011510
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0xf0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x14001158b
cmp ecx, 0x64
jae 0x14001158b
lea rcx, [rsp + 0xf0]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011570
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x7710]
mov qword [rsp + 0xf8], rax
lea rcx, [rsp + 0xf8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov ebx, edi
cmp ecx, 0xc9
jae 0x14001160b
cmp ecx, 0x64
jae 0x14001160b
nop word [rax + rax]
lea rcx, [rsp + 0xf8]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x1400115f0
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x7710]
mov qword [rsp + 0x100], rax
lea rcx, [rsp + 0x100]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x14001168b
cmp ecx, 0x64
jae 0x14001168b
nop dword [rax + rax]
lea rcx, [rsp + 0x100]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011670
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, 1
jne 0x1400114f0
jmp 0x140011484
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
lea ecx, [rax - 1]
imul ecx, eax
test ecx, ecx
js 0x1400118d0
mov dword [rsp + 0xb218], 0xffe7e9
mov byte [rsp + 0xb21c], 1
xor ecx, ecx
nop dword [rax]
lea eax, [rcx - 0x76]
xor byte [rsp + rcx + 0xb218], al
inc rcx
cmp rcx, 3
jb 0x140011720
mov byte [rsp + 0xb21c], 0
lea rax, [rsp + 0xb218]
mov qword [rsp + 0x140], rax
lea r14, [rsp + 0xb1f8]
movabs r15, 0xff00ff00ff00ff00
mov qword [rsp + 0x180], r15
mov qword [rsp + 0x188], r14
mov rsi, qword [r14]
xor rsi, r15
mov qword [rsp + 0x178], rsi
mov qword [r14], 0
xor ecx, ecx
mov rax, qword [0x14002a350]
lea rdi, [0x140009500]
lea rbx, [0x140000000]
test rax, rax
je 0x1400117c9
xor edx, edx
cmp rax, rdi
je 0x1400117b8
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x2a350]
test rax, rax
jne 0x1400117a0
jmp 0x1400117c9
mov r8, qword [rbx + rdx*8 + 0x2a670]
test r8, r8
jne 0x1400118af
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x14001188e
mov rax, rdi
mov rcx, r8
mov edx, 3
nop word [rax + rax]
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
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140011800
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 eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x14002a348]
mov qword [rbx + rax*8 + 0x2a350], rdi
mov qword [rbx + rax*8 + 0x2a670], r8
inc rax
mov qword [0x14002a348], rax
lea rdx, [rsp + 0x140]
mov rcx, qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
call r8
nop
xor rsi, r15
mov qword [rsp + 0x178], rsi
mov qword [r14], rsi
call sub.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_
mov dword [rsp + 0x9e24], 0xffffffff
mov dword [rsp + 0x8aa4], eax
mov rdx, r13
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x8aa4], eax
inc rdx
cmp rdx, 0x270
jb 0x1400118f0
mov dword [rsp + 0x8aa0], 0x270
mov dword [rsp + 0xb208], 0
lea rcx, [rsp + 0x148]
call fcn.14000e890
mov r14, qword [rsp + 0x148]
add r14, 0x5f5e100
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140011960
imul rax, rax, 0x64
jmp 0x14001197b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x140011ba6
lea rax, [rsp + 0x8aa0]
mov qword [rsp + 0x108], rax
lea rax, [rsp + 0x8aa0]
mov qword [rsp + 0x110], rax
mov esi, 0x186a0
nop dword [rax]
lea rcx, [rsp + 0x108]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x63
ja 0x1400119eb
nop dword [rax + rax]
lea rcx, [rsp + 0x108]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x1400119d0
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea ebx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x110]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x140011a4b
cmp ecx, 0x64
jae 0x140011a4b
lea rcx, [rsp + 0x110]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011a30
shr rcx, 0x20
add ecx, 0x7fffff9c
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
add edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x8aa0]
mov qword [rsp + 0x118], rax
lea rcx, [rsp + 0x118]
call fcn.14000c450
mov eax, eax
imul rax, rax, 0xc9
mov ebx, edi
cmp eax, 0xc9
jae 0x140011acb
cmp eax, 0x64
jae 0x140011acb
nop dword [rax]
lea rcx, [rsp + 0x118]
call fcn.14000c450
mov eax, eax
imul rax, rax, 0xc9
cmp eax, 0x64
jb 0x140011ab0
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + r12]
lea edx, [rcx - 0x80000000]
cmp ecx, r12d
cmovae edx, eax
mov eax, dword [rsp + 0xb208]
imul edx, eax
mov dword [rsp + 0xb208], edx
lea rax, [rsp + 0x8aa0]
mov qword [rsp + 0x120], rax
lea rcx, [rsp + 0x120]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
mov edi, ebx
cmp ecx, 0xc9
jae 0x140011b4b
cmp ecx, 0x64
jae 0x140011b4b
nop dword [rax + rax]
lea rcx, [rsp + 0x120]
call fcn.14000c450
mov eax, eax
imul rcx, rax, 0xc9
cmp ecx, 0x64
jb 0x140011b30
shr rcx, 0x20
lea edx, [rcx + 0x7fffff9c]
lea eax, [rdx + r12]
lea ecx, [rdx - 0x80000000]
cmp edx, r12d
cmovae ecx, eax
mov eax, dword [rsp + 0xb208]
sub eax, ecx
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], eax
mov eax, dword [rsp + 0xb208]
cdq
idiv edi
mov dword [rsp + 0xb208], edx
sub rsi, 1
jne 0x1400119b0
jmp 0x140011944
mov eax, dword [rsp + 0xb208]
mov dword [0x14002a320], eax
lea rcx, [rsp + 0x158]
call fcn.140004a60
add rsp, 0xb1c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
lea rdx, str._n_Authentication_failed_n
lea rcx, [rsp + 0x198]
call fcn.14000b400
lea rdx, [0x14001ff88]
lea rcx, [rsp + 0x198]
call sub.VCRUNTIME140.dll__CxxThrowException
int3