Function at 0x140008520
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push rbp
push rbx
push rsi
push r12
push r13
push r14
push r15
sub rsp, 0x4a0
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x30], 0xfffffffffffffffe
mov rax, qword [0x140041480]
xor rax, rbp
mov qword [rbp + 0x450], rax
mov r15, r9
mov r14, r8
mov r13, rdx
xor ebx, ebx
mov qword [rbp + 8], rbx
mov qword [rbp + 0x28], rcx
and qword [rbp + 0x20], rbx
xor eax, eax
mov qword [rbp + 0x40], rax
test rdx, rdx
je 0x1400087d7
mov rcx, rdx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
movsxd rsi, eax
add rsi, rsi
mov eax, 0x80000000
add rax, rsi
mov ecx, 0xffffffff
cmp rax, rcx
ja 0x140008648
cmp esi, 0x400
jg 0x1400085dc
movsxd r12, esi
mov rcx, r12
call fcn.140003e20
test al, al
je 0x1400085dc
lea rax, [r12 + 0xf]
cmp rax, r12
ja 0x1400085c9
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.14001b970
sub rsp, rax
lea r12, [rsp + 0x40]
jmp 0x14000860d
movsxd rcx, esi
or rax, 0xffffffffffffffff
sub rax, rcx
cmp rax, 0x10
jb 0x1400087cc
add rcx, 0x10
call fcn.14001b278
test rax, rax
je 0x140008648
and qword [rax], 0
mov rbx, rax
mov qword [rbp + 8], rax
lea r12, [rax + 0x10]
test r12, r12
je 0x140008648
mov byte [r12], 0
and qword [rsp + 0x38], 0
and qword [rsp + 0x30], 0
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], r12
or r9d, 0xffffffff
mov r8, r13
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
neg eax
sbb rcx, rcx
and rcx, r12
jmp 0x14000864a
xor ecx, ecx
test rcx, rcx
jne 0x140008658
mov rax, qword [rbp + 0x40]
jmp 0x1400087d7
xor edx, edx
lea r8d, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov r12, rax
mov qword [rbp + 0x18], rax
test rax, rax
jne 0x14000867c
call fcn.14000301c
mov esi, eax
jmp 0x1400087a2
mov r8, r15
mov rdx, r14
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rsi, rax
test rax, rax
jne 0x14000869d
call fcn.14000301c
jmp 0x140008796
mov rdx, rax
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov r13, rax
mov qword [rbp + 0x10], rax
test rax, rax
je 0x140008693
mov rdx, rsi
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov esi, eax
mov dword [rbp], esi
lea eax, [rsi + 1]
cmp eax, esi
jae 0x1400086d7
mov esi, 0x8007000e
jmp 0x140008798
mov ecx, eax
test eax, eax
je 0x140008711
xor edx, edx
or rax, 0xffffffffffffffff
div rcx
cmp rax, 1
jae 0x1400086f6
mov ecx, 0x80070216
call fcn.140003000
cmp rcx, 0x400
jbe 0x140008711
mov rdx, rcx
lea rcx, [rbp + 0x40]
call fcn.140010780
mov rcx, qword [rbp + 0x40]
jmp 0x140008719
lea rcx, [rbp + 0x48]
mov qword [rbp + 0x40], rcx
jmp 0x14000872e
test rcx, rcx
je 0x1400086cd
mov r9, rsi
mov r8, r13
mov rdx, rsi
call fcn.14001b370
test eax, eax
je 0x14000877a
cmp eax, 0xc
je 0x14000876f
cmp eax, 0x16
je 0x140008764
cmp eax, 0x22
je 0x140008764
cmp eax, 0x50
je 0x14000877a
mov ecx, 0x80004005
call fcn.140003000
int3
mov ecx, 0x80070057
call fcn.140003000
int3
mov ecx, 0x8007000e
call fcn.140003000
int3
mov rax, qword [rbp + 0x40]
mov byte [rsi + rax], 0
mov r8d, dword [rbp + 0x4c0]
mov rdx, qword [rbp + 0x40]
lea rcx, [rbp + 0x20]
call fcn.140007bb8
mov esi, eax
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop
lea rax, [rbp + 0x48]
cmp qword [rbp + 0x40], rax
je 0x1400087b6
lea rcx, [rbp + 0x40]
call fcn.140003cc4
nop
jmp 0x1400087c3
mov rcx, rbx
mov rbx, qword [rbx]
call fcn.14001b330
test rbx, rbx
jne 0x1400087b8
mov eax, esi
jmp 0x140008801
mov ecx, 0x80070216
call fcn.140003000
nop
lea rcx, [rbp + 0x48]
cmp rax, rcx
je 0x1400087ea
lea rcx, [rbp + 0x40]
call fcn.140003cc4
nop
jmp 0x1400087f7
mov rcx, rbx
mov rbx, qword [rbx]
call fcn.14001b330
test rbx, rbx
jne 0x1400087ec
mov eax, 0x8007000e
mov rcx, qword [rbp + 0x450]
xor rcx, rbp
call fcn.14001b940
lea rsp, [rbp + 0x460]
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbx
pop rbp
ret