Function at 0x1800058a0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push rbp
push rdi
push r12
push r14
push r15
sub rsp, 0x490
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x480], rbx
mov qword [rbp + 0x490], rsi
mov rax, qword [0x180058040]
xor rax, rbp
mov qword [rbp + 0x440], rax
mov r15, r9
mov rsi, rdx
xor r12d, r12d
mov ebx, r12d
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x20], r12
xor edx, edx
mov r8d, 0x408
lea rcx, [rbp + 0x30]
call fcn.180017e20
mov qword [rbp + 0x30], r12
test rsi, rsi
je 0x180005b57
mov rax, 0xffffffffffffffff
inc rax
cmp word [rsi + rax*2], 0
jne 0x180005911
inc eax
cdqe
lea r14, [rax + rax]
mov eax, 0x80000000
add rax, r14
mov ecx, 0xffffffff
cmp rax, rcx
ja 0x1800059db
movsxd rdi, r14d
cmp r14d, 0x400
jg 0x180005977
mov rcx, rdi
call fcn.180003e00
test al, al
je 0x180005977
lea rax, [rdi + 0xf]
cmp rax, rdi
ja 0x180005964
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.180017380
sub rsp, rax
lea rdi, [rsp + 0x40]
jmp 0x1800059a3
mov rax, rdi
not rax
cmp rax, 0x10
jb 0x180005bb2
lea rcx, [rdi + 0x10]
call fcn.18000d308
test rax, rax
je 0x1800059db
mov qword [rax], r12
mov rbx, rax
mov qword [rbp + 0x18], rax
lea rdi, [rax + 0x10]
test rdi, rdi
je 0x1800059db
mov byte [rdi], 0
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rdi
mov r9d, 0xffffffff
mov r8, rsi
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
cmove rdi, r12
jmp 0x1800059de
mov rdi, r12
test rdi, rdi
je 0x180005b57
xor edx, edx
lea r8d, [rdx + 0x60]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov rsi, rax
mov qword [rbp + 8], rax
test rax, rax
jne 0x180005a29
xor edx, edx
lea r8d, [rax + 2]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov rsi, rax
mov qword [rbp + 8], rax
test rax, rax
jne 0x180005a29
call fcn.1800035f0
mov edi, eax
jmp 0x180005b2a
mov r8, r15
mov edx, 0x65
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rdi, rax
test rax, rax
jne 0x180005a4c
call fcn.1800035f0
jmp 0x180005b19
mov rdx, rdi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov r14, rax
mov qword [rbp + 0x10], rax
test rax, rax
jne 0x180005a6e
call fcn.1800035f0
jmp 0x180005b19
mov rdx, rdi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
mov dword [rbp], edi
lea eax, [rdi + 1]
cmp eax, edi
jae 0x180005a90
mov edi, 0x8007000e
jmp 0x180005b1b
mov ecx, eax
test eax, eax
je 0x180005ac2
xor edx, edx
mov rax, 0xffffffffffffffff
div rcx
cmp rax, 1
jb 0x180005bbd
cmp rcx, 0x400
jbe 0x180005ac2
mov edx, ecx
lea rcx, [rbp + 0x30]
call fcn.180003610
jmp 0x180005aca
lea rax, [rbp + 0x38]
mov qword [rbp + 0x30], rax
jmp 0x180005adb
cmp qword [rbp + 0x30], 0
jne 0x180005ae9
mov edi, 0x8007000e
jmp 0x180005b1b
test rdi, rdi
je 0x180005afd
mov r8, rdi
mov rdx, r14
mov rcx, qword [rbp + 0x30]
call fcn.180017780
mov rax, qword [rbp + 0x30]
mov byte [rdi + rax], 0
mov r8d, dword [rbp + 0x4a0]
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x20]
call fcn.180005440
mov edi, eax
test rsi, rsi
je 0x180005b2a
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop
lea rax, [rbp + 0x38]
cmp qword [rbp + 0x30], rax
je 0x180005b3e
lea rcx, [rbp + 0x30]
call fcn.1800035d0
nop
test rbx, rbx
je 0x180005b53
mov rcx, rbx
mov rbx, qword [rbx]
call fcn.18000d2e0
test rbx, rbx
jne 0x180005b43
mov eax, edi
jmp 0x180005b85
lea rax, [rbp + 0x38]
cmp qword [rbp + 0x30], rax
je 0x180005b6b
lea rcx, [rbp + 0x30]
call fcn.1800035d0
nop
test rbx, rbx
je 0x180005b80
mov rcx, rbx
mov rbx, qword [rbx]
call fcn.18000d2e0
test rbx, rbx
jne 0x180005b70
mov eax, 0x8007000e
mov rcx, qword [rbp + 0x440]
xor rcx, rbp
call fcn.1800069e0
mov rbx, qword [rbp + 0x480]
mov rsi, qword [rbp + 0x490]
lea rsp, [rbp + 0x450]
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
mov ecx, 0x80070216
call fcn.180001160
nop
mov ecx, 0x80070216
call fcn.180001160
int3