Function at 0x14002c2f0
Capabilities:
Create thread
Query environment variable

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x110
mov r14, r9
movsx rbx, dl
mov r13, rcx
call fcn.1400d2480
or rdi, 0xffffffffffffffff
mov rbp, rbx
mov r12, rax
mov rsi, rdi
nop dword [rax + rax]
inc rsi
cmp byte [r14 + rsi], 0
jne 0x14002c330
mov r15d, dword [rsp + 0x178]
imul esi, ebp
sub esi, r15d
add esi, r13d
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov rcx, rdi
inc rcx
cmp byte [r14 + rcx], 0
jne 0x14002c354
imul ecx, ebp
mov dword [rsp + 0x38], 0
mov ebp, r13d
imul ecx, r12d
lea rdx, [0x1400ed3b4]
mov r9d, esi
mov r8, r13
imul ecx, r15d
sub ebp, ecx
lea rcx, [rsp + 0xd0]
mov dword [rsp + 0x30], ebp
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x158], ebp
call fcn.14006a6e0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0xa0], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmm1, xmmword [rax + 0x30]
movsx eax, bl
mov dword [rsp + 0x160], eax
imul eax, r13d
imul eax, r13d
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xc0], xmm1
sub eax, ebp
mov ecx, eax
mov dword [rsp + 0x150], eax
call fcn.1400d67b0
xor r8d, r8d
mov edx, 0x391
xor ecx, ecx
mov r12, rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rcx, rax
mov qword [rsp + 0x60], rax
call fcn.14006f850
mov r15, qword [rsp + 0x170]
mov rbp, rax
cmp bl, byte [rsp + 0x158]
jge 0x14002c573
mov edx, 0x52
xor ecx, ecx
lea r8d, [rdx - 0x3d]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rcx, rbp
mov qword [rsp + 0x40], rax
call fcn.14006b0a0
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorGroupCount]
lea rcx, str.c2ret
movzx edx, al
call fcn.14006fd10
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
mov rcx, rdi
mov r10, rax
nop
inc rcx
cmp byte [r14 + rcx], 0
jne 0x14002c470
add cl, 2
movzx eax, r13b
imul cl
mov rcx, rdi
movzx edx, al
nop dword [rax]
inc rcx
cmp byte [r12 + rcx], 0
jne 0x14002c490
movzx eax, byte [rsp + 0x60]
imul cl
sub dl, al
mov rax, rdi
sub dl, bl
sub dl, 9
add dl, bpl
add dl, sil
add dl, byte [rsp + 0x178]
add dl, byte [rsp + 0xa0]
nop
inc rax
cmp byte [r15 + rax], 0
jne 0x14002c4c0
add dl, al
mov rax, qword [rsp + 0x40]
lea r9, str.overcharge
mov byte [rsp + 0x28], dl
lea rcx, str.c5a0
mov edx, r10d
mov qword [rsp + 0x20], rax
call fcn.14006ea70
mov rcx, rax
call fcn.140098790
xor ecx, ecx
mov edx, 0xb1
lea r8d, [rcx + 0x1d]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rbx, rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
xor ecx, ecx
lea r8d, [rcx + 0x15]
mov edx, 0x337
mov qword [rsp + 0x40], rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
lea r8, [0x140001b00]
xor r9d, r9d
mov qword [rsp + 0x48], rax
xor eax, eax
xor edx, edx
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
lea r9, str.motel
mov r8, rbx
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
mov rdx, r13
mov ecx, 0x20
mov qword [rsp + 0x28], rax
call fcn.1400a9af0
mov rbx, rdi
inc rbx
cmp byte [r14 + rbx], 0
jne 0x14002c576
mov rax, rdi
inc rax
cmp byte [r15 + rax], 0
jne 0x14002c583
imul ebx, eax
add ebx, 2
imul ebx, r13d
add ebx, ebp
add ebx, esi
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorGroupCount]
lea r8, str.intervenor
imul ebx, r13d
lea r9d, [rbx + rbx*2]
lea rcx, [rsp + 0xd0]
movzx edx, ax
add r9d, r9d
call fcn.1400dab70
xor ecx, ecx
mov edx, 0x3b2
lea r8d, [rcx + 0xa]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
xor ecx, ecx
mov edx, 0xec
lea r8d, [rcx + 0xa]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
xor r14d, r14d
mov edx, 0x304
mov rbx, rax
lea rax, [0x1400ed3b8]
lea r8d, [r14 + 9]
xor ecx, ecx
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], rax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
lea rcx, [rsp + 0x70]
movups xmm0, xmmword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x50]
movaps xmmword [rsp + 0x70], xmm0
movsd qword [rsp + 0x80], xmm1
call fcn.140088a60
mov rdx, rax
mov rcx, rdi
nop dword [rax + rax]
inc rcx
cmp byte [r15 + rcx], r14b
jne 0x14002c640
sub ebp, ecx
mov rax, rdi
inc ebp
imul ebp, r13d
cmp byte [rdx + rax + 1], r14b
lea rax, [rax + 1]
jne 0x14002c654
lea eax, [rax + rax*8]
shl eax, 2
sub ebp, eax
sub ebp, dword [rsp + 0x160]
sub ebp, dword [rsp + 0x90]
add ebp, dword [rsp + 0x60]
add ebp, dword [rsp + 0x150]
add ebp, dword [rsp + 0x158]
inc rdi
cmp byte [r12 + rdi], r14b
jne 0x14002c687
lea r8, [0x140001b00]
mov r9d, esi
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], r14
sub ebp, edi
mov dword [rsp + 0x20], r14d
call qword [sym.imp.KERNEL32.dll_CreateThread]
lea rcx, str.help
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rcx
lea rcx, str.fahrenheit
mov qword [rsp + 0x20], rcx
lea ecx, [rbp - 6]
xor r9d, r9d
mov rdx, rax
call fcn.14008a360
mov rax, rbx
mov rbx, qword [rsp + 0x168]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret