Function at 0x404b58
Capabilities:
Check for time delay via gettickcount
Create process on windows
Enumerate gui resources
Log keystrokes via polling

Disassembly:
push rbp
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x218
lea rbp, [rsp + 0x80]
lea rdx, str.Opening_Firefox...
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], 0
lea r9, str.https:__mnca_company.com_
lea r8, str.firefox.exe
lea rdx, str.open
mov ecx, 0
mov rax, qword [sym.imp.SHELL32.dll_ShellExecuteA]
call rax
mov qword [rbp + 0x90], 0
mov rax, qword [rbp + 0x90]
test rax, rax
jne 0x404c03
lea rbx, [rbp + 0x90]
lea rax, [rbp + 0x9d]
mov rcx, rax
call sym.openFirefox__::lambda_HWND____long_long_1::operator_int____HWND____long_long____const
mov rdx, rbx
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_EnumWindows]
call rax
jmp 0x404bd0
lea rdx, str.Firefox_window_opened_successfully.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov eax, dword [0x00413058]
add eax, 1
mov dword [0x00413058], eax
lea rax, [rbp + 0x90]
mov rdx, rax
lea rcx, [0x00413040]
call method.std::vector_HWND____std::allocator_HWND_____.push_back_HWND___const_
mov ecx, 1
mov rax, qword [sym.imp.USER32.dll_GetSystemMetrics]
call rax
mov dword [rbp + 0x164], eax
call sym.rand
mov ecx, eax
mov edx, dword [rbp + 0x164]
mov eax, edx
add eax, eax
add eax, edx
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
mov r8d, eax
mov eax, ecx
cdq
idiv r8d
mov ecx, edx
mov eax, dword [rbp + 0x164]
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
add eax, ecx
mov dword [rbp + 0x160], eax
mov dword [rbp + 0x18c], 0
mov eax, dword [rbp + 0x18c]
cmp eax, dword [rbp + 0x160]
jge 0x404d0d
mov r9d, 0
mov r8d, 0
mov edx, 0
mov ecx, 0x28
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov r9d, 0
mov r8d, 2
mov edx, 0
mov ecx, 0x28
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
add dword [rbp + 0x18c], 1
jmp 0x404caa
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov dword [rbp + 0x15c], eax
call sym.generateScrollDuration__
imul eax, eax, 0x3e8
mov dword [rbp + 0x158], eax
mov byte [rbp + 0x18b], 1
lea rdx, str.Scrolling...
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov edx, eax
mov eax, dword [rbp + 0x15c]
sub edx, eax
mov eax, dword [rbp + 0x158]
cmp edx, eax
setb al
test al, al
je 0x404e5e
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov ecx, eax
mov edx, 0x10624dd3
mov eax, ecx
mul edx
mov eax, edx
shr eax, 6
imul eax, eax, 0x3e8
sub ecx, eax
mov eax, ecx
test eax, eax
sete al
test al, al
je 0x404daf
xor byte [rbp + 0x18b], 1
call sym.rand
mov ecx, eax
mov eax, dword [rbp + 0x164]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov r8d, eax
mov eax, ecx
cdq
idiv r8d
mov ecx, edx
mov eax, dword [rbp + 0x164]
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
add eax, ecx
mov dword [rbp + 0x154], eax
cmp byte [rbp + 0x18b], 0
je 0x404df9
mov eax, 0x26
jmp 0x404dfe
mov eax, 0x28
mov r9d, 0
mov r8d, 0
mov edx, 0
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
cmp byte [rbp + 0x18b], 0
je 0x404e2a
mov eax, 0x26
jmp 0x404e2f
mov eax, 0x28
mov r9d, 0
mov r8d, 2
mov edx, 0
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
jmp 0x404d56
lea rdx, str.Scrolling_completed.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rax, [rbp + 0x70]
mov rcx, rax
call sym.getRandomLink_abi:cxx11___
lea rax, [rbp + 0x70]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::empty___const
xor eax, 1
test al, al
je 0x405a74
lea rax, [rbp + 0x70]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::begin__
mov rsi, rax
lea rax, [rbp + 0x70]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::end__
mov rbx, rax
lea rax, [rbp + 0x70]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::begin__
mov r9d, r12d
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call sym._ZSt9transformIN9__gnu_cxx17__normal_iteratorIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES9_Z11openFirefoxvEUlhE0
lea rdx, str.Opening_random_link:
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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
lea rax, [rbp + 0x70]
mov rdx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____char__std::char_traits_char___std::allocator_char____std::basic_ostream_char__std::char_traits_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 0
mov qword [rbp], 0
mov qword [rbp + 8], 0
mov qword [rbp + 0x10], 0
mov dword [rbp - 0x10], 1
lea rax, [rbp - 0x10]
mov r8d, 0
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x10]
mov r8d, 0
mov edx, 0x4c
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x10]
mov r8d, 1
mov edx, 0x4c
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x10]
mov r8d, 1
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
mov ecx, 0x64
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
lea rax, [rbp - 0x10]
mov r8d, 0
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x10]
mov r8d, 0
mov edx, 0x41
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x10]
mov r8d, 1
mov edx, 0x41
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x10]
mov r8d, 1
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x10]
mov r8d, 0
mov edx, 0x2e
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x70]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::c_str___const
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax]
test al, al
je 0x4050a3
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax]
movsx eax, al
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_VkKeyScanA]
call rax
mov word [rbp + 0x152], ax
movzx eax, word [rbp + 0x152]
movzx eax, ax
movzx edx, al
lea rax, [rbp - 0x10]
mov r8d, 0
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
movzx eax, word [rbp + 0x152]
movzx eax, ax
movzx edx, al
lea rax, [rbp - 0x10]
mov r8d, 1
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
add qword [rbp + 0x180], 1
jmp 0x40502e
lea rax, [rbp - 0x10]
mov r8d, 0
mov edx, 0xd
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
mov ecx, 0x7d0
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
mov ecx, 1
mov rax, qword [sym.imp.USER32.dll_GetSystemMetrics]
call rax
mov dword [rbp + 0x14c], eax
call sym.rand
mov ecx, eax
mov edx, dword [rbp + 0x14c]
mov eax, edx
add eax, eax
add eax, edx
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
mov r8d, eax
mov eax, ecx
cdq
idiv r8d
mov ecx, edx
mov eax, dword [rbp + 0x14c]
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
add eax, ecx
mov dword [rbp + 0x148], eax
mov dword [rbp + 0x17c], 0
mov eax, dword [rbp + 0x17c]
cmp eax, dword [rbp + 0x148]
jge 0x40518b
mov r9d, 0
mov r8d, 0
mov edx, 0
mov ecx, 0x28
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov r9d, 0
mov r8d, 2
mov edx, 0
mov ecx, 0x28
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
add dword [rbp + 0x17c], 1
jmp 0x405128
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov dword [rbp + 0x144], eax
call sym.generateScrollDuration1__
imul eax, eax, 0x3e8
mov dword [rbp + 0x140], eax
mov byte [rbp + 0x17b], 1
lea rdx, str.Scrolling...
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov edx, eax
mov eax, dword [rbp + 0x144]
sub edx, eax
mov eax, dword [rbp + 0x140]
cmp edx, eax
setb al
test al, al
je 0x4052dc
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov ecx, eax
mov edx, 0x10624dd3
mov eax, ecx
mul edx
mov eax, edx
shr eax, 6
imul eax, eax, 0x3e8
sub ecx, eax
mov eax, ecx
test eax, eax
sete al
test al, al
je 0x40522d
xor byte [rbp + 0x17b], 1
call sym.rand
mov ecx, eax
mov eax, dword [rbp + 0x14c]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov r8d, eax
mov eax, ecx
cdq
idiv r8d
mov ecx, edx
mov eax, dword [rbp + 0x14c]
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
add eax, ecx
mov dword [rbp + 0x13c], eax
cmp byte [rbp + 0x17b], 0
je 0x405277
mov eax, 0x26
jmp 0x40527c
mov eax, 0x28
mov r9d, 0
mov r8d, 0
mov edx, 0
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
cmp byte [rbp + 0x17b], 0
je 0x4052a8
mov eax, 0x26
jmp 0x4052ad
mov eax, 0x28
mov r9d, 0
mov r8d, 2
mov edx, 0
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
jmp 0x4051d4
lea rdx, str.Scrolling_completed.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rax, [rbp - 0x50]
lea rdx, [rbp + 0x70]
mov rcx, rax
call sym.WaterMill_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea rax, [rbp - 0x50]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::empty___const
xor eax, 1
test al, al
je 0x405a32
lea rax, [rbp - 0x50]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::begin__
mov rsi, rax
lea rax, [rbp - 0x50]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::end__
mov rbx, rax
lea rax, [rbp - 0x50]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::begin__
mov r9d, edi
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call sym._ZSt9transformIN9__gnu_cxx17__normal_iteratorIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES9_Z11openFirefoxvEUlhE1
lea rdx, str.Opening_random_link:
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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
lea rax, [rbp - 0x50]
mov rdx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____char__std::char_traits_char___std::allocator_char____std::basic_ostream_char__std::char_traits_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov qword [rbp + 0x20], 0
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov dword [rbp + 0x20], 1
lea rax, [rbp + 0x20]
mov r8d, 0
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x20]
mov r8d, 0
mov edx, 0x4c
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x20]
mov r8d, 1
mov edx, 0x4c
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x20]
mov r8d, 1
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
mov ecx, 0x64
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
lea rax, [rbp + 0x20]
mov r8d, 0
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x20]
mov r8d, 0
mov edx, 0x41
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x20]
mov r8d, 1
mov edx, 0x41
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x20]
mov r8d, 1
mov edx, 0x11
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp + 0x20]
mov r8d, 0
mov edx, 0x2e
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
lea rax, [rbp - 0x50]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::c_str___const
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x170]
movzx eax, byte [rax]
test al, al
je 0x405525
mov rax, qword [rbp + 0x170]
movzx eax, byte [rax]
movsx eax, al
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_VkKeyScanA]
call rax
mov word [rbp + 0x13a], ax
movzx eax, word [rbp + 0x13a]
movzx eax, ax
movzx edx, al
lea rax, [rbp + 0x20]
mov r8d, 0
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
movzx eax, word [rbp + 0x13a]
movzx eax, ax
movzx edx, al
lea rax, [rbp + 0x20]
mov r8d, 1
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
add qword [rbp + 0x170], 1
jmp 0x4054b0
lea rax, [rbp + 0x20]
mov r8d, 0
mov edx, 0xd
mov rcx, rax
call sym.sendKeys_tagINPUT__unsigned_short__bool_
mov ecx, 0x7d0
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
mov ecx, 1
mov rax, qword [sym.imp.USER32.dll_GetSystemMetrics]
call rax
mov dword [rbp + 0x134], eax
call sym.rand
mov ecx, eax
mov edx, dword [rbp + 0x134]
mov eax, edx
add eax, eax
add eax, edx
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
mov r8d, eax
mov eax, ecx
cdq
idiv r8d
mov ecx, edx
mov eax, dword [rbp + 0x134]
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
add eax, ecx
mov dword [rbp + 0x130], eax
mov dword [rbp + 0x16c], 0
mov eax, dword [rbp + 0x16c]
cmp eax, dword [rbp + 0x130]
jge 0x40560d
mov r9d, 0
mov r8d, 0
mov edx, 0
mov ecx, 0x28
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov r9d, 0
mov r8d, 2
mov edx, 0
mov ecx, 0x28
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
add dword [rbp + 0x16c], 1
jmp 0x4055aa
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov dword [rbp + 0x12c], eax
call sym.generateScrollDuration2__
imul eax, eax, 0x3e8
mov dword [rbp + 0x128], eax
mov byte [rbp + 0x16b], 1
lea rdx, str.Scrolling...
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov edx, eax
mov eax, dword [rbp + 0x12c]
sub edx, eax
mov eax, dword [rbp + 0x128]
cmp edx, eax
setb al
test al, al
je 0x40575e
mov rax, qword [sym.imp.KERNEL32.dll_GetTickCount]
call rax
mov ecx, eax
mov edx, 0x10624dd3
mov eax, ecx
mul edx
mov eax, edx
shr eax, 6
imul eax, eax, 0x3e8
sub ecx, eax
mov eax, ecx
test eax, eax
sete al
test al, al
je 0x4056af
xor byte [rbp + 0x16b], 1
call sym.rand
mov ecx, eax
mov eax, dword [rbp + 0x134]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov r8d, eax
mov eax, ecx
cdq
idiv r8d
mov ecx, edx
mov eax, dword [rbp + 0x134]
lea edx, [rax + 3]
test eax, eax
cmovs eax, edx
sar eax, 2
add eax, ecx
mov dword [rbp + 0x124], eax
cmp byte [rbp + 0x16b], 0
je 0x4056f9
mov eax, 0x26
jmp 0x4056fe
mov eax, 0x28
mov r9d, 0
mov r8d, 0
mov edx, 0
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
cmp byte [rbp + 0x16b], 0
je 0x40572a
mov eax, 0x26
jmp 0x40572f
mov eax, 0x28
mov r9d, 0
mov r8d, 2
mov edx, 0
mov ecx, eax
mov rax, qword [sym.imp.USER32.dll_keybd_event]
call rax
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
jmp 0x405656
mov eax, dword [0x00413248]
add eax, 1
mov dword [0x00413248], eax
call sym.checkAndUpdateLockStatus__
lea rdx, str.Scrolling_completed.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov ebx, 0
mov esi, 0
mov edi, 0
mov r12d, 0
movzx eax, byte [0x0041324c]
xor eax, 1
test al, al
je 0x405850
lea rax, [rbp + 0xcf]
mov rcx, rax
call fcn.00407aa8
mov ebx, 1
lea rdx, [rbp + 0xcf]
lea rax, [rbp + 0xa0]
mov r8, rdx
lea rdx, str._html_body_footer_div_div_div_2__div_2__div_4__div_ul_li_a
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_char_const__std::allocator_char__const_
mov esi, 1
lea rax, [rbp + 0xff]
mov rcx, rax
call fcn.00407aa8
mov edi, 1
lea rdx, [rbp + 0xff]
lea rax, [rbp + 0xd0]
mov r8, rdx
lea rdx, str.https:__mnca_company.com_
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_char_const__std::allocator_char__const_
mov r12d, 1
lea rdx, [rbp + 0xa0]
lea rax, [rbp + 0xd0]
mov rcx, rax
call sym.isElementAvailableAndNotEmpty_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
test al, al
je 0x405850
mov r13d, 1
jmp 0x405856
mov r13d, 0
test r12b, r12b
je 0x40586a
lea rax, [rbp + 0xd0]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
test dil, dil
je 0x40587e
lea rax, [rbp + 0xff]
mov rcx, rax
call sym.std::allocator_char_::allocator__
test sil, sil
je 0x405892
lea rax, [rbp + 0xa0]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
test bl, bl
je 0x4058a5
lea rax, [rbp + 0xcf]
mov rcx, rax
call sym.std::allocator_char_::allocator__
test r13b, r13b
je 0x40590b
lea rax, [rbp - 0x30]
mov rcx, rax
call sym.DSA_abi:cxx11___
lea rdx, str.DSA_function_activated_and_new_tab_opened_with_link:
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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
lea rax, [rbp - 0x30]
mov rdx, rax
call sym.std::basic_ostream_char__std::char_traits_char____std::operator____char__std::char_traits_char___std::allocator_char____std::basic_ostream_char__std::char_traits_char_____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rax, [rbp - 0x30]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
lea rdx, str.New_tab_opened_successfully.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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_
jmp 0x405a21
lea rdx, str.Closing_Firefox...
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rdx, str.Firefox_closed_successfully.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rax, [0x00413040]
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x118]
mov rcx, rax
call method.std::vector_HWND____std::allocator_HWND_____.begin__
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x118]
mov rcx, rax
call method.std::vector_HWND____std::allocator_HWND_____.end__
mov qword [rbp + 0x60], rax
lea rdx, [rbp + 0x60]
lea rax, [rbp + 0x68]
mov rcx, rax
call method.bool___gnu_cxx::operator__HWND____std::vector_HWND____std.allocator_HWND__________gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::allocator_HWND________const____gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::al
test al, al
je 0x405a0e
lea rax, [rbp + 0x68]
mov rcx, rax
call method.__gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::allocator_HWND_______.operator___const
mov rax, qword [rax]
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x110]
mov r9d, 0
mov r8d, 0
mov edx, 0x10
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_SendMessageA]
call rax
mov rax, qword [rbp + 0x110]
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_IsWindow]
call rax
test eax, eax
setne al
test al, al
je 0x4059fd
mov ecx, 0x64
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
jmp 0x4059d1
lea rax, [rbp + 0x68]
mov rcx, rax
call method.__gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::allocator_HWND_______.operator__
jmp 0x405983
lea rcx, [0x00413040]
call method.std::vector_HWND____std::allocator_HWND_____.clear__
mov ebx, 0
jmp 0x405a59
mov rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
jmp 0x405a54
lea rdx, str.Failed_to_get_a_random_link.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov ebx, 1
lea rax, [rbp - 0x50]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
cmp ebx, 1
je 0x405a96
mov ebx, 0
jmp 0x405bcc
lea rdx, str.Failed_to_get_a_random_link.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rdx, str.Closing_Firefox...
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rdx, str.Firefox_closed_successfully.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
lea rax, [0x00413040]
mov qword [rbp + 0x108], rax
mov rax, qword [rbp + 0x108]
mov rcx, rax
call method.std::vector_HWND____std::allocator_HWND_____.begin__
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x108]
mov rcx, rax
call method.std::vector_HWND____std::allocator_HWND_____.end__
mov qword [rbp + 0x50], rax
lea rdx, [rbp + 0x50]
lea rax, [rbp + 0x58]
mov rcx, rax
call method.bool___gnu_cxx::operator__HWND____std::vector_HWND____std.allocator_HWND__________gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::allocator_HWND________const____gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::al
test al, al
je 0x405b99
lea rax, [rbp + 0x58]
mov rcx, rax
call method.__gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::allocator_HWND_______.operator___const
mov rax, qword [rax]
mov qword [rbp + 0x100], rax
mov rax, qword [rbp + 0x100]
mov r9d, 0
mov r8d, 0
mov edx, 0x10
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_SendMessageA]
call rax
mov rax, qword [rbp + 0x100]
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_IsWindow]
call rax
test eax, eax
setne al
test al, al
je 0x405b88
mov ecx, 0x64
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
jmp 0x405b5c
lea rax, [rbp + 0x58]
mov rcx, rax
call method.__gnu_cxx::__normal_iterator_HWND____std::vector_HWND____std::allocator_HWND_______.operator__
jmp 0x405b0e
lea rcx, [0x00413040]
call method.std::vector_HWND____std::allocator_HWND_____.clear__
lea rdx, str.Firefox_closed_successfully.
mov rcx, qword [sym.imp.libstdc_6.dll_std::cout]
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 rdx, qword [0x00410890]
mov rcx, rax
call sym.std::ostream::operator___std::ostream____std::ostream__
mov ebx, 1
lea rax, [rbp + 0x70]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
cmp ebx, 1
jmp 0x405c7d
add rsp, 0x218
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop rbp
ret