Function at 0x1400164a0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov byte [rsp + 0x18], r8b
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov r15, qword [rbp + 0xf0]
or r14, 0xffffffffffffffff
movzx r12d, dl
mov rbx, rcx
cmp r8b, dl
je 0x1400165b3
lea r8, str.boot
lea rdx, str.root
lea ecx, [r14 + 9]
call fcn.14001c510
mov dword [rbp + 0xc8], eax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rbx
mov rsi, rax
movsx rdi, r12b
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea r8d, [r14 + 9]
lea rdx, str.root
mov r9, rdi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
mov edi, eax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
lea rdx, str.joseph
mov r9d, edi
mov r8b, 0x20
mov rcx, rsi
mov r13, rax
mov qword [rsp + 0x20], rax
call fcn.140042cf0
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, r14
mov r8, rax
nop
inc rcx
cmp byte [r15 + rcx], 0
jne 0x140016560
movsx rax, byte [rbp + 0xd0]
lea edx, [r13*2]
add edx, r13d
add edx, edx
sub edx, eax
movsx rax, byte [rbp + 0xe0]
add edx, eax
mov rax, r14
sub edx, edi
add edx, dword [rbp + 0xd8]
add edx, dword [rbp + 0xc8]
sub edx, ecx
nop
inc rax
cmp byte [rbx + rax], 0
jne 0x1400165a0
add edx, eax
mov rcx, r8
call fcn.14005d830
xor ecx, ecx
call fcn.140054350
movsx r8, byte [rbp + 0xe0]
movsx rcx, r12b
mov qword [rsp + 0x48], rcx
mov r9, rcx
mov rdx, r15
xor ecx, ecx
mov rsi, rax
mov qword [rbp + 0x40], rax
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
mov ecx, eax
mov edi, eax
mov dword [rsp + 0x40], eax
call fcn.140058b30
mov r13, qword [rbp + 0xe8]
mov r8d, eax
mov dword [rbp + 0xc8], eax
cmp r12b, dil
jg 0x14001670f
lea rax, str.helium
movzx edi, sil
mov qword [rbp], rax
mov rax, r14
neg dil
nop dword [rax + rax]
inc rax
cmp byte [r15 + rax], 0
jne 0x140016620
movsx rdx, byte [rbp + 0xd0]
imul eax, r13d
mov rcx, r14
sub edx, eax
movsx rax, byte [rbp + 0xe0]
sub edx, eax
sub edx, dword [rbp + 0xd8]
nop dword [rax + rax]
inc rcx
cmp byte [rbx + rcx], 0
jne 0x140016650
lea eax, [rsi + rdx]
mov qword [rbp + 0x10], 0
mov qword [rbp + 0x18], rsi
add ecx, eax
lea rax, str.sherry
mov dword [rbp + 0x28], 0x20
add ecx, r8d
mov qword [rbp + 0x20], rax
add ecx, dword [rsp + 0x40]
mov dword [rbp + 8], ecx
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov qword [rbp + 0x30], rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rdx, r14
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
mov r8, rax
movaps xmmword [rbp - 0x40], xmm0
movaps xmmword [rbp - 0x30], xmm1
movups xmm0, xmmword [rbp + 0x20]
movsd xmm1, qword [rbp + 0x30]
movaps xmmword [rbp - 0x20], xmm0
movsd qword [rbp - 0x10], xmm1
nop
inc rdx
cmp byte [rbx + rdx], 0
jne 0x1400166c0
movzx r9d, byte [rbp + 0xd8]
lea rax, str.debtor
movzx ecx, dil
mov qword [rsp + 0x30], rax
sub r9b, r12b
lea rax, str.handsaw
add r9b, dl
mov qword [rsp + 0x28], rax
lea rax, [0x1400ee018]
add r9b, byte [rbp + 0xd0]
lea rdx, [rbp - 0x40]
mov qword [rsp + 0x20], rax
call fcn.14003fc90
call qword [sym.imp.USER32.dll_GetForegroundWindow]
xor ecx, ecx
mov edx, 0x1cf
lea r8d, [rcx + 0x1c]
mov qword [rbp - 0x40], rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov qword [rbp - 0x30], 0
mov qword [rbp - 0x38], rax
call qword [sym.imp.USER32.dll_GetActiveWindow]
xor ecx, ecx
mov qword [rbp - 0x28], rax
lea rax, str.extreme
lea r8d, [rcx + 1]
mov edx, 0x99
mov qword [rbp - 0x20], rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
xor ecx, ecx
mov edx, 0xb8
lea r8d, [rcx + 4]
mov qword [rbp - 0x18], rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rdi, qword [rbp + 0xd8]
lea r8, [rbp + 0x50]
movups xmm0, xmmword [rbp - 0x40]
movups xmm1, xmmword [rbp - 0x30]
mov r12, rax
mov qword [rsp + 0x50], rax
lea rax, str.misogyny
movaps xmmword [rbp + 0x50], xmm0
movaps xmmword [rbp + 0x60], xmm1
movups xmm0, xmmword [rbp - 0x20]
mov qword [rsp + 0x30], rax
lea rdx, [0x1400ee018]
lea rcx, [rbp - 0x70]
movaps xmmword [rbp + 0x70], xmm0
mov r9, r13
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r12
call fcn.140055000
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x50], xmm0
movsd xmm0, qword [rax + 0x20]
movups xmmword [rbp + 0x60], xmm1
mov eax, dword [rbp + 0xc8]
movsd qword [rbp + 0x70], xmm0
cmp eax, dword [rsp + 0x40]
jg 0x14001687b
mov rcx, r14
inc rcx
cmp byte [rbx + rcx], 0
jne 0x1400167f1
mov rax, qword [rbp + 0x58]
shr rax, 0x20
sub eax, r12d
add eax, r13d
add ecx, eax
add ecx, edi
mov dword [rsp + 0x60], ecx
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, r14
mov qword [rsp + 0x68], rax
lea rax, str.c6a0
mov qword [rsp + 0x70], rax
nop word [rax + rax]
inc rcx
cmp byte [rbx + rcx], 0
jne 0x140016830
movsx rdx, byte [rbp + 0xe0]
movups xmm0, xmmword [rsp + 0x60]
mov eax, r13d
sub eax, edx
lea r8, [rbp - 0x70]
lea rdx, str.pencil
sub eax, dword [rsp + 0x48]
movaps xmmword [rbp - 0x70], xmm0
sub eax, r12d
add eax, 8
add eax, ecx
mov rcx, rsi
mov dword [rsp + 0x78], eax
movups xmm1, xmmword [rsp + 0x70]
movaps xmmword [rbp - 0x60], xmm1
call fcn.14005c0e0
call fcn.140032e90
mov esi, eax
mov dword [rbp + 0xe8], esi
call fcn.14005cdb0
movsx edi, byte [rbp + 0xe0]
mov qword [rsp + 0x48], rax
cmp esi, edi
ja 0x1400168ab
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
call fcn.140059940
mov r12, r14
nop
inc r12
cmp byte [rbx + r12], 0
jne 0x1400168b0
imul edi, dword [rbp + 0xd8]
mov rdx, qword [rbp + 0x40]
mov eax, 4
sub eax, edx
lea ecx, [rdi + rax*2]
mov rdi, qword [rsp + 0x50]
lea eax, [r13*2]
add eax, r13d
add eax, eax
sub ecx, eax
sub ecx, edi
add ecx, dword [rbp + 0x68]
add r12d, ecx
mov rcx, r14
nop
inc rcx
cmp byte [r15 + rcx], 0
jne 0x1400168f0
movsx rax, byte [rbp + 0xd0]
imul ecx, edx
imul ecx, dword [rsp + 0x40]
add ecx, 8
imul ecx, r13d
sub ecx, eax
mov rax, r14
sub ecx, dword [rbp + 0x58]
sub ecx, esi
add ecx, dword [rbp + 0xc8]
inc rax
cmp byte [rbx + rax], 0
jne 0x140016921
add eax, 0xfffffff7
mov qword [rbp - 0x68], rdx
mov edx, 0x78
add eax, ecx
lea r8d, [rdx - 0x67]
xor ecx, ecx
mov dword [rbp - 0x70], eax
lea rax, [0x1400ee018]
mov qword [rbp - 0x60], rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rdx, rdi
xor ecx, ecx
mov qword [rbp - 0x58], rax
call qword [sym.imp.KERNEL32.dll_SizeofResource]
movsxd rdi, dword [rbp + 0xc8]
lea rcx, [0x1400ee018]
mov dword [rbp - 0x50], eax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r9, rdi
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
mov dword [rbp - 0x48], 0x20
mov dword [rbp - 0x4c], eax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rsi, qword [rsp + 0x50]
mov rdx, rsi
xor ecx, ecx
mov dword [rsp + 0x60], eax
mov qword [rsp + 0x68], r13
call qword [sym.imp.KERNEL32.dll_LoadResource]
lea r9, [rbp]
movups xmm0, xmmword [rsp + 0x60]
xorps xmm2, xmm2
mov qword [rsp + 0x70], rax
lea rax, str.extreme
lea r8, [rsp + 0x60]
movups xmmword [rbp + 0x20], xmm2
movaps xmmword [rbp], xmm0
movups xmm0, xmmword [rbp - 0x70]
mov qword [rsp + 0x78], rax
lea rax, str.truckit
mov edx, 2
movaps xmmword [rsp + 0x60], xmm0
movups xmm0, xmmword [rbp - 0x50]
movups xmm1, xmmword [rsp + 0x70]
mov ecx, r12d
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
movaps xmmword [rbp - 0x80], xmm0
movaps xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rbp - 0x60]
movaps xmmword [rsp + 0x70], xmm1
call fcn.14001f510
mov edx, dword [rbp + 0xc8]
mov r9, rax
cmp edx, 2
jne 0x140016a89
mov rdx, r14
nop
inc rdx
cmp byte [rbx + rdx], 0
jne 0x140016a30
mov rdi, qword [rbp + 0xd8]
movzx eax, sil
lea rcx, str.c6a0
imul byte [rbp + 0x5c]
movzx r8d, al
movzx eax, dil
imul r8b
movzx r8d, al
mov al, 0xfd
imul r13b
sub al, r8b
sub al, r9b
add al, 2
add dl, al
add dl, byte [rbp + 0xe8]
call fcn.14003a9c0
mov ecx, 1
call fcn.140058b30
mov edx, dword [rbp + 0xc8]
jmp 0x140016a90
mov rdi, qword [rbp + 0xd8]
mov rcx, r14
inc rcx
cmp byte [rbx + rcx], 0
jne 0x140016a93
nop dword [rax]
inc r14
cmp byte [r15 + r14], 0
jne case.default.0x140016b0d
mov rax, r14
dec sil
imul cl
mov ecx, 1
sub cl, byte [rbp - 0x28]
movzx r8d, al
movzx eax, r13b
imul cl
add r8b, al
lea rcx, str.c11a4
sub r8b, r12b
sub r8b, dl
lea rdx, str.c6a5
sub r8b, byte [rsp + 0x48]
sub r8b, dil
add r8b, byte [rbp - 0x4c]
add r8b, sil
call fcn.140054540
xor edx, edx
xor ecx, ecx
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp qword [sym.imp.KERNEL32.dll_LoadResource]
sub bl, byte [rbx + 0x45]
iretd