Function at 0x18004d130
Capabilities:
Create thread
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x18013b5c0]
xor rax, rsp
mov qword [rbp - 0x10], rax
xor r15d, r15d
mov eax, 1
xor ecx, ecx
cpuid
mov dword [rbp - 0x1c], ebx
mov dword [rbp - 0x18], ecx
mov dword [rbp - 0x14], edx
mov r8d, eax
lea rdx, str.._08X
lea rcx, [rbp - 0x40]
call qword [sym.imp.USER32.dll_wsprintfW]
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0xc0000000
mov r8d, 3
lea rcx, [rbp - 0x40]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [0x18013bc18], rax
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x18013be70], eax
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x18013be74], eax
cmp qword [0x18013bf78], r15
jne 0x18004d267
mov al, 0xa7
mov cl, 0x8d
mov dl, 0x91
mov bl, 0x90
mov r8b, 0x8b
mov r9b, 0x8f
mov r10b, 0x93
movzx r11d, cl
mov dil, 0xc9
mov sil, 0xca
xor r14d, r14d
xor al, 0xe1
mov byte [rbp - 0x30], al
xor cl, 0xe2
mov byte [rbp - 0x2f], cl
xor dl, 0xe3
mov byte [rbp - 0x2e], dl
xor bl, 0xe4
mov byte [rbp - 0x2d], bl
xor r8b, 0xe5
mov byte [rbp - 0x2c], r8b
xor r9b, 0xe6
mov byte [rbp - 0x2b], r9b
xor r10b, 0xe7
mov byte [rbp - 0x2a], r10b
xor r11b, 0xe8
mov byte [rbp - 0x29], r11b
xor dil, 0xe9
mov byte [rbp - 0x28], dil
xor sil, 0xea
mov byte [rbp - 0x27], sil
mov byte [rbp - 0x26], r14b
lea rdx, [rbp - 0x30]
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
mov qword [0x18013bf78], rax
test rax, rax
je 0x18004d1e2
call fcn.180001630
mov qword [rbp - 0x30], r15
mov dword [rbp - 0x1c], r15d
mov eax, dword [0x18013bb8c]
mov dword [rbp - 0x20], eax
lea rax, [rbp - 0x30]
mov qword [rbp - 0x18], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov r9d, 0x10
lea r8, [rbp - 0x20]
mov edx, 0x2730a8
mov rcx, qword [0x18013bc18]
call fcn.18004cfb0
mov byte [rbp - 0x40], r15b
mov dword [rbp - 0x1c], r15d
mov eax, dword [0x18013bb8c]
mov dword [rbp - 0x20], eax
lea rax, [rbp - 0x40]
mov qword [rbp - 0x18], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
mov r9d, 0x10
lea r8, [rbp - 0x20]
mov edx, 0x26b0a8
mov rcx, qword [0x18013bc18]
call fcn.18004cfb0
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x18013bc38], eax
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x18013bc3c], eax
mov rbx, qword [rbp - 0x30]
add rbx, 0x250
mov edi, 0x19
nop dword [rax + rax]
mov rcx, rbx
call fcn.180046370
cmp eax, 0x260e020b
jne 0x18004d34d
lea rax, [rbx + 0x11ecdef8]
mov qword [0x18013bc20], rax
add rbx, 0x1000
sub rdi, 1
jne 0x18004d330
mov ecx, 1
call fcn.1800540e0
mov qword [rbp - 0x30], rax
lea rcx, [rbp - 0x18]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r15d
mov r9, rax
lea r8, [0x180046260]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp - 0x20], rax
test rax, rax
je 0x18004d497
cmp dword [rbp - 0x18], edi
je 0x18004d48c
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x30], xmm0
lea rcx, [rbp - 0x30]
call sub.MSVCP140.dll__Thrd_detach
test eax, eax
jne 0x18004d48c
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x20], xmm0
mov rbx, qword [0x18013bf70]
lea rdx, str.MedalOverlay
lea rcx, str.MedalOverlayClass
call qword [sym.imp.USER32.dll_FindWindowA]
mov qword [0x18013bf68], rax
test rax, rax
je 0x18004d433
movdqa xmm0, xmmword [0x18005fd00]
movdqu xmmword [rbp - 0x20], xmm0
lea rdx, [rbp - 0x20]
mov rcx, rax
call qword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
mov dword [rsp + 0x30], r15d
mov eax, dword [0x18013bc3c]
mov dword [rsp + 0x28], eax
mov eax, dword [0x18013bc38]
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x18013bf68]
call qword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x18004d44f
mov r9d, 0x40
lea r8, str.BLITZ
lea rdx, str.Make_sure_Medal_is_open
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rcx, rbx
call fcn.18004cbe0
mov rcx, qword [0x18013bf70]
call fcn.18004c9c0
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.1800540c0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
mov ecx, 1
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
nop
mov dword [rbp - 0x18], r15d
mov ecx, 6
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3