Function at 0x180039e90
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov qword [rsp + 0x100], rbx
mov r13, rcx
mov qword [rsp + 0x88], rcx
movzx ebx, dx
mov r8d, 0xf0
mov rdx, rbx
mov rcx, qword [0x180145d20]
call qword [sym.imp.KERNEL32.dll_FindResourceW]
xor edx, edx
mov rdi, rdx
mov qword [rsp + 0x90], rdx
mov ebp, edx
test rax, rax
je 0x180039f18
mov rdx, rax
mov rcx, qword [0x180145d20]
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x180039f18
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
mov qword [rsp + 0x90], rax
mov r8d, 5
mov rdx, rbx
mov rcx, qword [0x180145d20]
call qword [sym.imp.KERNEL32.dll_FindResourceW]
test rax, rax
je 0x18003a327
mov rdx, rax
mov rcx, qword [0x180145d20]
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x18003a320
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
test rax, rax
je 0x18003a317
movzx ecx, word [rax + 2]
mov edx, 0xffff
xor ebx, ebx
mov r12d, ebx
cmp cx, dx
sete r12b
cmp cx, dx
jne 0x180039f82
lea rcx, [rax + 0x10]
jmp 0x180039f86
lea rcx, [rax + 8]
movzx r8d, word [rcx]
mov word [rsp + 0x60], r8w
mov rcx, rax
call fcn.18003e7b0
mov rsi, rax
mov edx, 5
mov rcx, qword [r13 + 8]
call qword [sym.imp.USER32.dll_GetWindow]
mov r15, rax
movzx r14d, bx
mov r13w, word [rsp + 0x60]
cmp bx, r13w
jae 0x18003a327
mov r11d, 0x378
test r12d, r12d
je 0x180039fd6
mov r8d, dword [rsi + 0x14]
lea rax, [rsi + 0x18]
jmp 0x180039fdf
movzx r8d, word [rsi + 0x10]
lea rax, [rsi + 0x12]
cmp word [rax], 0x7b
jne 0x18003a29e
mov rbp, rbx
mov rcx, rdi
test rdi, rdi
je 0x18003a034
nop word [rax + rax]
movzx eax, word [rcx]
lea r10, [rcx + 2]
movzx r9d, word [rcx + 2]
mov edx, dword [rcx + 4]
add rcx, 8
cmp eax, r8d
je 0x18003a022
mov rax, rdx
add rcx, rdx
jne 0x18003a000
jmp 0x18003a034
cmp r9w, r11w
jne 0x18003a02c
mov edx, ebx
jmp 0x18003a036
mov rbp, r10
add edx, 6
jmp 0x18003a036
mov edx, ebx
mov rcx, rbx
mov qword [rsp + 0x68], rbx
test edx, edx
je 0x18003a098
mov edi, edx
mov ecx, 0x42
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbx, rax
test rax, rax
je 0x18003a2e4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov r9, rdi
mov r8, rbp
mov rdx, rdi
mov rcx, rax
call fcn.1800160b0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
lea r8, [rsp + 0x68]
mov edx, 1
mov rcx, rbx
call qword [sym.imp.ole32.dll_CreateStreamOnHGlobal]
mov rcx, qword [rsp + 0x68]
xor ebx, ebx
mov qword [rsp + 0x80], rbx
test rcx, rcx
je 0x18003a0cf
lea rdx, [rsp + 0x80]
call fcn.18001fbe0
mov ebp, eax
test eax, eax
js 0x18003a0c2
mov rbx, qword [rsp + 0x80]
jmp 0x18003a0cf
mov rbx, qword [rsp + 0x80]
jmp 0x18003a280
call fcn.180025790
test r12d, r12d
je 0x18003a0e3
lea r13, [rsi + 0x18]
movzx eax, word [rsi + 0xc]
jmp 0x18003a0eb
lea r13, [rsi + 0x12]
mov ax, word [rsi + 8]
movsx ecx, ax
mov dword [rsp + 0x70], ecx
test r12d, r12d
je 0x18003a0fd
movzx eax, word [rsi + 0xe]
jmp 0x18003a101
mov ax, word [rsi + 0xa]
movsx edx, ax
mov dword [rsp + 0x74], edx
test r12d, r12d
je 0x18003a113
movzx eax, word [rsi + 0x10]
jmp 0x18003a117
mov ax, word [rsi + 0xc]
cwde
add eax, ecx
mov dword [rsp + 0x78], eax
test r12d, r12d
je 0x18003a129
movzx eax, word [rsi + 0x12]
jmp 0x18003a12d
mov ax, word [rsi + 0xe]
cwde
add eax, edx
mov dword [rsp + 0x7c], eax
lea rdx, [rsp + 0x70]
mov rax, qword [rsp + 0x88]
mov rcx, qword [rax + 8]
call qword [sym.imp.USER32.dll_MapDialogRect]
test r12d, r12d
je 0x18003a15d
mov eax, dword [rsi + 0x14]
mov ebp, dword [rsi + 4]
mov edi, dword [rsi + 8]
xor edx, edx
jmp 0x18003a167
movzx eax, word [rsi + 0x10]
xor edx, edx
mov ebp, edx
mov edi, dword [rsi]
mov r11, qword [rsp + 0x88]
mov r11, qword [r11 + 8]
mov ecx, dword [rsp + 0x7c]
mov r9d, dword [rsp + 0x74]
sub ecx, r9d
mov r8d, dword [rsp + 0x78]
mov r10d, dword [rsp + 0x70]
sub r8d, r10d
bts edi, 0x10
mov qword [rsp + 0x58], rdx
mov rdx, qword [0x180145d18]
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], r11
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x30], r8d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r10d
mov r9d, edi
xor r8d, r8d
lea rdx, str.AtlAxWinLic90
mov ecx, ebp
call fcn.180014cb0
mov rdi, rax
mov qword [rsp + 0x98], rax
test rax, rax
je 0x18003a273
test r12d, r12d
je 0x18003a1fa
mov edx, dword [rsi]
test edx, edx
je 0x18003a1fa
mov rcx, rax
call qword [sym.imp.USER32.dll_SetWindowContextHelpId]
mov qword [rsp + 0x38], rbx
xor eax, eax
mov qword [rsp + 0x30], rax
lea rcx, [0x1800fdcd0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x68]
mov rdx, r13
lea rcx, [rsp + 0x98]
call fcn.18003c3a0
mov ebp, eax
test eax, eax
js 0x18003a2fb
test r14w, r14w
mov eax, 0
cmove r15, rax
mov dword [rsp + 0x30], reloc.OLEAUT32.dll_SafeArrayGetLBound
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
mov rdx, r15
mov rcx, rdi
call qword [sym.imp.USER32.dll_SetWindowPos]
mov r15, rdi
mov r13w, word [rsp + 0x60]
jmp 0x18003a280
call fcn.180016080
mov ebp, eax
mov r13w, word [rsp + 0x60]
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18003a2b7
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
xor ebx, ebx
jmp 0x18003a2b9
test r14w, r14w
je 0x18003a2b9
mov edx, 2
mov rcx, r15
call qword [sym.imp.USER32.dll_GetWindow]
mov r15, rax
jmp 0x18003a2b9
xor ebx, ebx
mov edx, r12d
mov rcx, rsi
call fcn.18003e850
mov rsi, rax
inc r14w
cmp r14w, r13w
jae 0x18003a327
mov rdi, qword [rsp + 0x90]
mov r11d, 0x378
jmp 0x180039fc7
mov ebp, 0x8007000e
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18003a327
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
jmp 0x18003a327
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18003a327
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
jmp 0x18003a327
call fcn.180016080
mov ebp, eax
jmp 0x18003a327
call fcn.180016080
mov ebp, eax
mov eax, ebp
mov rbx, qword [rsp + 0x100]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret