Function at 0x180012340
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
push rdi
push r14
sub rsp, 0x40
mov rax, r8
mov rbx, rdx
mov rdx, rax
mov rcx, rbx
mov r8, r9
mov r14d, 0x8007000e
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rdi, rax
test rax, rax
je 0x1800125a7
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov esi, eax
test eax, eax
je 0x1800125a7
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
test rax, rax
je 0x1800125a7
mov edx, esi
mov qword [rsp + 0x60], rbp
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbp, rax
test rax, rax
je 0x1800125a2
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
test rax, rax
je 0x180012599
mov r8d, esi
mov qword [rsp + 0x68], r12
mov rdx, rdi
mov rcx, rax
call fcn.180039120
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
xor r12d, r12d
lea r8, [rsp + 0x30]
xor edx, edx
mov qword [rsp + 0x30], r12
mov rcx, rbp
call qword [sym.imp.ole32.dll_CreateStreamOnHGlobal]
test eax, eax
jne 0x180012594
mov rbx, qword [rsp + 0x30]
lea ecx, [rax + 0x18]
call sub.gdiplus.dll_GdipAlloc
mov rsi, rax
test rax, rax
je 0x180012589
lea rax, vtable.Gdiplus::Bitmap.0
mov qword [rsp + 0x70], r15
lea rdx, [rsp + 0x38]
mov qword [rsi], rax
mov rcx, rbx
mov qword [rsp + 0x38], r12
call sub.gdiplus.dll_GdipCreateBitmapFromStream
mov dword [rsi + 0x10], eax
mov rax, qword [rsp + 0x38]
mov qword [rsi + 8], rax
mov eax, dword [rsi + 0x10]
mov dword [rsi + 0x10], r12d
test eax, eax
jne 0x180012576
cmp byte [rsp + 0x90], r12b
je 0x18001252d
lea ecx, [rax + 0x18]
call sub.gdiplus.dll_GdipAlloc
mov edi, dword [rsp + 0x88]
mov rbx, rax
mov r15d, dword [rsp + 0x80]
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1800124bc
mov rcx, rsi
call fcn.180011110
mov r9d, eax
mov r8d, edi
mov edx, r15d
mov rcx, rbx
call fcn.18000f760
mov rcx, rax
jmp 0x1800124bf
mov rcx, r12
mov rax, qword [rsp + 0x98]
mov qword [rax], rcx
test rcx, rcx
je 0x180012576
mov rcx, qword [rcx + 8]
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x38], r12
call sub.gdiplus.dll_GdipGetImageGraphicsContext
mov rbx, qword [rsp + 0x38]
mov edx, 4
mov rcx, rbx
call sub.gdiplus.dll_GdipSetSmoothingMode
mov edx, 7
mov rcx, rbx
call sub.gdiplus.dll_GdipSetInterpolationMode
mov rdx, qword [rsi + 8]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x28], edi
mov rcx, rbx
mov dword [rsp + 0x20], r15d
call sub.gdiplus.dll_GdipDrawImageRectI
mov rcx, rbx
mov r14d, r12d
call sub.gdiplus.dll_GdipDeleteGraphics
jmp 0x180012576
mov rcx, rsi
call fcn.180011110
mov rcx, rsi
mov edi, eax
call fcn.1800109b0
mov rcx, rsi
mov ebx, eax
call fcn.180011140
mov r9d, eax
mov dword [rsp + 0x28], edi
xor r8d, r8d
mov dword [rsp + 0x20], ebx
xor edx, edx
mov rcx, rsi
call fcn.180010780
mov rcx, rax
mov rax, qword [rsp + 0x98]
test rcx, rcx
cmovne r14d, r12d
mov qword [rax], rcx
mov r8, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [r8]
mov r15, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov r12, qword [rsp + 0x68]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov rbp, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x78]
mov eax, r14d
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret