Function at 0x14000170b
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push rbp
push rbx
sub rsp, 0x218
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1b0], rcx
mov qword [rbp + 0x1b8], rdx
mov dword [rbp + 0x1c0], r8d
mov qword [rbp + 0x1c8], r9
mov rax, qword [rbp + 0x1c8]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rdx, rax
mov eax, dword [rbp + 0x1c0]
movzx eax, ax
mov rcx, rax
mov rax, qword [rbp + 0x1b8]
mov r8, rdx
mov rdx, rcx
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindResourceA]
call rax
mov qword [rbp + 0x188], rax
cmp qword [rbp + 0x188], 0
jne 0x1400017e9
lea rax, str.Resource_not_found:
mov rdx, rax
mov rax, qword [str.__b_r_]
mov rcx, rax
call method.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 [rbp + 0x1c8]
mov rdx, rax
call method.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
mov rcx, rax
lea rax, str._with_ID
mov rdx, rax
call method.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 eax, dword [rbp + 0x1c0]
mov edx, eax
call method.std::ostream.operator___int_
mov rcx, rax
mov rax, qword [method.std::basic_ostream_char__std::char_traits_char____std::endl_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char____]
mov rdx, rax
call method.std::ostream.operator___std::ostream____std::ostream__
mov ebx, 0
jmp 0x1400018f0
mov rdx, qword [rbp + 0x188]
mov rax, qword [rbp + 0x1b8]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_LoadResource]
call rax
mov qword [rbp + 0x180], rax
mov rdx, qword [rbp + 0x188]
mov rax, qword [rbp + 0x1b8]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_SizeofResource]
call rax
mov dword [rbp + 0x17c], eax
mov rax, qword [rbp + 0x180]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_LockResource]
call rax
mov qword [rbp + 0x170], rax
mov rdx, qword [rbp + 0x1b0]
lea rax, [rbp - 0x60]
mov r8d, 4
mov rcx, rax
call fcn.1400a77b0
lea rax, [rbp - 0x60]
add rax, 0xc8
mov rcx, rax
call method.std::basic_ios_char__std::char_traits_char___.operator____const
test al, al
je 0x1400018b7
lea rax, str.Failed_to_create_file:
mov rdx, rax
mov rax, qword [str.__b_r_]
mov rcx, rax
call method.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 [rbp + 0x1b0]
mov rdx, rax
call method.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
mov rcx, rax
mov rax, qword [method.std::basic_ostream_char__std::char_traits_char____std::endl_char__std.char_traits_char____std::basic_ostream_char__std::char_traits_char____]
mov rdx, rax
call method.std::ostream.operator___std::ostream____std::ostream__
mov ebx, 0
jmp 0x1400018e4
mov ecx, dword [rbp + 0x17c]
mov rdx, qword [rbp + 0x170]
lea rax, [rbp - 0x60]
mov r8, rcx
mov rcx, rax
call method.std::ostream.write_char_const__long_long_
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::basic_ofstream_char__std::char_traits_char___.close__
mov ebx, 1
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::basic_ofstream_char__std::char_traits_char___.basic_ofstream__
mov eax, ebx
jmp 0x14000190e
add rsp, 0x218
pop rbx
pop rbp
ret