Function at 0x14009b910
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rsi
push rdi
sub rsp, 0x40
mov rsi, r8
xor ebx, ebx
mov rdi, rcx
movsxd r9, ecx
mov qword [rcx + 0x40], rbx
lea r8, [0x14009bf70]
lea edx, [rbx + 0xe]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesW]
test eax, eax
jne 0x14009b95d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rsi
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, ebx
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret
cmp dword [rdi + 0x44], ebx
jbe 0x14009b97a
mov rdx, qword [rdi + 0x18]
mov r8d, send
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindResourceW]
test rax, rax
jne 0x14009b991
movzx edx, word [rdi]
mov r8d, send
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindResourceW]
test rax, rax
je 0x14009b942
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x14009b9b9
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rsp, 0x40
pop rdi
pop rsi
pop rbx
jmp qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rax
mov qword [rsp + 0x28], r14
call qword [sym.imp.KERNEL32.dll_LockResource]
mov r14, rax
test rax, rax
jne 0x14009b9eb
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r14, qword [rsp + 0x28]
add rsp, 0x40
pop rdi
pop rsi
pop rbx
jmp qword [sym.imp.KERNEL32.dll_GetLastError]
mov qword [rsp + 0x70], rbp
movzx ebp, word [rax + 4]
lea eax, [rbp - 1]
movsxd rcx, eax
imul rcx, rcx, 0x38
add rcx, 0x40
call fcn.1400d886c
mov rdi, rax
test rax, rax
jne 0x14009ba23
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x14009bb9f
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r13
mov dword [rax + 4], ebp
mov qword [rsp + 0x20], r15
mov r12d, ebx
test ebp, ebp
je 0x14009baf4
lea rbp, [rax + 0x18]
add r14, 0x12
mov r13, rbp
nop dword [rax + rax]
movzx edx, word [r14]
mov r8d, 3
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rcx, rsi
mov r15, rax
test rax, rax
je 0x14009bb54
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rcx, rsi
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14009bb54
mov rdx, r15
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov r15d, eax
mov ecx, eax
mov dword [r13 + 8], r15d
call fcn.1400d886c
mov qword [r13], rax
test rax, rax
je 0x14009bb5a
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rcx, qword [r13]
mov r8d, r15d
mov rdx, rax
call fcn.1400d5d30
mov r11d, r12d
imul r11, r11, 0x38
lea rcx, [r11 + rdi + 8]
call fcn.14009bec0
test eax, eax
je 0x14009bb1c
inc r12d
add r14, 0xe
add r13, 0x38
cmp r12d, dword [rdi + 4]
jb 0x14009ba50
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rdx, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14009bbc0
mov esi, eax
test eax, eax
je 0x14009bb6a
mov rcx, rdi
call fcn.1400d6134
mov eax, esi
jmp 0x14009bb90
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [rdi + 4], ebx
jbe 0x14009bb44
nop word [rax + rax]
mov rcx, qword [rbp]
call fcn.1400d6134
inc ebx
add rbp, 0x38
cmp ebx, dword [rdi + 4]
jb 0x14009bb30
mov rcx, rdi
call fcn.1400d6134
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x14009bb90
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, rdi
call fcn.1400d6134
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x14009bb90
cmp dword [rdi + 4], ebx
jbe 0x14009bb86
lea rsi, [rdi + 0x18]
mov rcx, qword [rsi]
call fcn.1400d6134
inc ebx
add rsi, 0x38
cmp ebx, dword [rdi + 4]
jb 0x14009bb73
mov rcx, rdi
call fcn.1400d6134
xor eax, eax
mov r12, qword [rsp + 0x38]
mov r13, qword [rsp + 0x30]
mov r15, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x70]
mov r14, qword [rsp + 0x28]
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret