Function at 0x1800f6c40
Capabilities:
Extract resource via kernel32 functions

Disassembly:
test rcx, rcx
je 0x1800f6f0a
push rdi
push r14
push r15
sub rsp, 0x40
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x78], rsi
mov r14d, r9d
mov rsi, rdx
mov r15, rcx
test rdx, rdx
je 0x1800f6ef2
movzx edx, r8w
lea r8, [0x1805a5ed8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
test rax, rax
je 0x1800f6d97
mov rdx, rbx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
test eax, eax
jne 0x1800f6cb5
xor ebx, ebx
jmp 0x1800f6d97
mov rdx, rbx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x1800f6ccd
xor ebx, ebx
jmp 0x1800f6d97
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbx, rax
test rax, rax
je 0x1800f6d97
mov rdx, rdi
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbp, rax
test rax, rax
jne 0x1800f6cff
xor ebx, ebx
jmp 0x1800f6d97
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalLock]
test rax, rax
jne 0x1800f6d1a
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalFree]
xor ebx, ebx
jmp 0x1800f6d97
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
xor ebx, ebx
mov qword [rsp + 0x60], rbx
lea r8, [rsp + 0x60]
xor edx, edx
mov rcx, rbp
call qword [sym.imp.ole32.dll_CreateStreamOnHGlobal]
test eax, eax
jne 0x1800f6d8e
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1800f6d8e
call fcn.1800f76c0
mov rdi, rax
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
test rdi, rdi
je 0x1800f6d9a
mov eax, dword [rdi + 0x10]
mov dword [rdi + 0x10], ebx
test eax, eax
je 0x1800f6d9a
mov rax, qword [rdi]
lea edx, [rbx + 1]
mov rcx, rdi
call qword [rax]
jmp 0x1800f6d97
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov rdi, rbx
mov qword [rsp + 0x28], rdi
test rdi, rdi
je 0x1800f6ee0
movzx edx, r14w
lea r8, [0x1805a5ed8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbp, rax
test rax, rax
je 0x1800f6eb4
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov r14d, eax
test eax, eax
je 0x1800f6eb4
mov rdx, rbp
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x1800f6eb4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rsi, rax
test rax, rax
je 0x1800f6eb4
mov edx, r14d
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbp, rax
test rax, rax
je 0x1800f6eb4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
test rax, rax
je 0x1800f6eab
mov r8d, r14d
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [rsp + 0x60], rbx
lea r8, [rsp + 0x60]
xor edx, edx
mov rcx, rbp
call qword [sym.imp.ole32.dll_CreateStreamOnHGlobal]
test eax, eax
jne 0x1800f6eab
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1800f6eab
call fcn.1800f76c0
mov rsi, rax
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rcx]
call qword [rdx + reloc.WS2_32.dll_recv]
test rsi, rsi
je 0x1800f6ea6
mov ecx, dword [rsi + 0x10]
mov dword [rsi + 0x10], ebx
test ecx, ecx
je 0x1800f6ea6
mov rax, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [rax]
mov rsi, rbx
mov rbx, rsi
jmp 0x1800f6eb4
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [rsp + 0x30], rbx
test rbx, rbx
je 0x1800f6ecd
mov r8, rbx
mov rdx, rdi
mov rcx, r15
call fcn.1800f6a20
nop
test rbx, rbx
je 0x1800f6ee0
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
nop
test rdi, rdi
je 0x1800f6ef2
mov rax, qword [rdi]
mov edx, 1
mov rcx, rdi
call qword [rax]
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret