Function at 0x1800d8160
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x8e0]
sub rsp, 0x9e0
mov rax, qword [0x180121650]
xor rax, rsp
mov qword [rbp + 0x8d0], rax
mov qword [rbp - 0x78], r9
mov qword [rbp - 0x80], r8
mov qword [rsp + 0x58], rdx
mov rdi, rcx
movdqa xmm0, xmmword [0x180119950]
movdqa xmmword [rbp + 0x1e0], xmm0
mov byte [rbp + 0x1d0], 0
movdqa xmm1, xmm0
movdqa xmmword [rbp + 0x200], xmm0
mov byte [rbp + 0x1f0], 0
movdqa xmmword [rbp + 0x220], xmm0
mov byte [rbp + 0x210], 0
movdqa xmmword [rbp + 0x250], xmm0
mov byte [rbp + 0x240], 0
movdqa xmmword [rbp + 0x270], xmm0
mov byte [rbp + 0x260], 0
xor ecx, ecx
mov qword [rbp + 0x40], rcx
mov word [rbp + 0x48], cx
movdqu xmmword [rbp + 0x5a], xmm0
mov byte [rbp + 0x4a], cl
mov qword [rbp + 0x10], rcx
mov word [rbp + 0x18], cx
movdqu xmmword [rbp + 0x2a], xmm0
mov byte [rbp + 0x1a], cl
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], rcx
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x20], rcx
mov qword [rbp + 0xa0], rcx
mov qword [rbp + 0xa8], rcx
mov qword [rbp + 0xb0], rcx
mov ecx, 0x30
call fcn.1800fd1e8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0xa8], rax
xor ecx, ecx
mov qword [rbp + 0xb8], rcx
xorps xmm2, xmm2
movsd qword [rbp + 0xc0], xmm2
mov qword [rbp + 0xc8], rcx
mov dword [rbp + 0xd0], 1
mov qword [rbp + 0xd8], rcx
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xe0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xf0], xmm1
movdqa xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x110], rcx
mov qword [rbp + 0x118], 0xffffffffffffffff
mov dword [rbp + 0x120], ecx
xor eax, eax
movups xmmword [rbp + 0x128], xmm0
movups xmmword [rbp + 0x138], xmm0
movups xmmword [rbp + 0x148], xmm0
movups xmmword [rbp + 0x158], xmm0
mov qword [rbp + 0x168], rax
movdqa xmm0, xmmword [0x180119950]
movdqa xmmword [rbp + 0x180], xmm0
mov byte [rbp + 0x170], al
mov word [rbp + 0x190], cx
mov dword [rbp + 0x194], ecx
mov qword [rbp + 0x198], rcx
xorps xmm0, xmm0
movaps xmmword [rbp + 0x1a0], xmm0
movsd qword [rbp + 0x1b0], xmm2
mov byte [rbp + 0x1b8], al
mov qword [rbp + 0x1bc], rcx
mov r14d, dword [rbp + 0x940]
mov esi, r14d
imul eax, r14d, 0x330
mov dword [rsp + 0x70], eax
lea r8d, [rcx + 2]
cmp r14d, eax
ja 0x1800d8647
mov edx, 0x746f
lea ebx, [rcx + 4]
movzx r15d, byte [rsp + 0x50]
mov r12d, dword [rsp + 0x58]
mov r13d, dword [rsp + 0x58]
movzx r14d, byte [rsp + 0x50]
mov eax, 0x6568
cmp esi, 0x4293
ja 0x1800d8472
je 0x1800d8452
cmp esi, 0xf7
ja 0x1800d83da
je 0x1800d83d1
mov eax, esi
sub eax, 0x4a
je 0x1800d86f8
sub eax, 0x27
je 0x1800d83d1
cmp eax, 0x33
jne 0x1800d862d
mov dword [rbp + 0x590], 0x6f68616d
mov word [rbp + 0x594], dx
jmp 0x1800d862d
mov qword [rbp - 0x78], rcx
jmp 0x1800d862d
cmp esi, 0x1e75
je 0x1800d83fa
cmp esi, 0x2c34
jne 0x1800d862d
mov byte [rbp + 0x596], 0
jmp 0x1800d862d
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rcx
mov r9d, 0xb0
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180059780
mov dword [rsp + 0x68], 0xffffffff
mov rcx, qword [rbp - 0x80]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x5b]
mov rcx, rax
call fcn.1800e2fb0
jmp 0x1800d8620
mov dword [rsp + 0x68], r8d
mov r9, qword [rbp - 0x80]
xor edx, edx
mov r8d, 0xfe
lea rcx, [rsp + 0x68]
call fcn.1800dee70
jmp 0x1800d8620
cmp esi, 0x57c4
je 0x1800d8609
cmp esi, 0x8354
je 0x1800d8600
cmp esi, 0xaee4
je 0x1800d85f0
cmp esi, 0xda74
je 0x1800d85b2
cmp esi, 0x10604
jne 0x1800d862d
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x180121348]
lea ecx, [r9 + 0xe]
call fcn.180078a20
test al, al
jne 0x1800d8620
mov ebx, 0x119
cmp ebx, 0x119
je 0x1800d8596
cmp ebx, 0x498b
je 0x1800d8555
cmp ebx, 0x91fd
je 0x1800d8515
cmp ebx, 0xda6f
jne 0x1800d8599
test r15b, r15b
je 0x1800d9054
mov ecx, r12d
call qword [sym.imp.dbghelp.dll_SymSetOptions]
mov esi, 1
jmp 0x1800d9090
xor edx, edx
mov ecx, edx
movzx eax, r15b
test r12d, r12d
cmovne ecx, eax
movzx r15d, cl
mov ecx, edx
movzx eax, r14b
test r13d, r13d
cmovne ecx, eax
movzx r14d, cl
test cl, cl
je 0x1800d8599
mov r9d, dword [rsp + 0x60]
mov r8, qword [rsp + 0x78]
mov edx, dword [rsp + 0x50]
lea rcx, [rbp + 0x70]
call qword [sym.imp.ADVAPI32.dll_SetSecurityDescriptorDacl]
jmp 0x1800d8599
mov r15b, 1
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x90], rax
call qword [sym.imp.dbghelp.dll_SymGetOptions]
mov r12d, eax
lea r9, [rsp + 0x60]
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x70]
call qword [sym.imp.ADVAPI32.dll_GetSecurityDescriptorDacl]
mov r13d, eax
jmp 0x1800d8599
mov r14b, 1
add ebx, 0x4872
cmp ebx, 0x121c8
jbe 0x1800d84d1
mov ebx, 4
jmp 0x1800d8620
lea rdx, [0x18011630f]
lea rcx, [rbp + 0x59d]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rbp + 0x59f], 0
mov r8d, 2
lea rdx, [0x180116344]
lea rcx, [rbp + 0x59f]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rbp + 0x5a1], 0
jmp 0x1800d8620
mov word [rbp + 0x59b], ax
mov byte [rbp + 0x59d], 0
jmp 0x1800d862d
mov byte [rbp + 0x59a], 0x74
jmp 0x1800d862d
mov r8, rbx
lea rdx, [0x1801162db]
lea rcx, [rbp + 0x590]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov r8d, 2
mov edx, 0x746f
xor ecx, ecx
imul eax, dword [rbp + 0x940], 0x44
add esi, eax
cmp esi, dword [rsp + 0x70]
jbe 0x1800d8381
mov r14d, dword [rbp + 0x940]
lea r13d, [r14 + 0x931]
cmp r14d, r13d
jae 0x1800d908c
mov eax, 0x1bb
lea rdx, [0x18000f810]
movzx esi, byte [rsp + 0x50]
mov r15d, dword [rsp + 0x58]
movzx edi, byte [rsp + 0x50]
mov r12, qword [rbp + 0x560]
mov rbx, qword [rsp + 0x68]
nop
cmp r14d, 0x4e2
ja 0x1800d8aeb
je 0x1800d8a94
cmp r14d, 0x2c3
ja 0x1800d8a02
je 0x1800d89c0
cmp r14d, 0xa4
je 0x1800d8969
cmp r14d, 0x159
je 0x1800d8960
cmp r14d, 0x20e
jne 0x1800d8dfe
mov qword [rbp + 0x560], 0xffffffffffffffff
mov word [rbp + 0x230], ax
lea rdx, [rbp + 0x210]
mov ecx, 0xb1
call fcn.1800c9680
mov sil, 1
jmp 0x1800d8df2
mov rsi, qword [rbp - 0x78]
mov eax, dword [rsi]
mov dword [rsp + 0x70], eax
lea r9, [rsp + 0x70]
mov r8, qword [rbp - 0x80]
lea rdx, [rsp + 0x78]
mov ecx, 0x29
call fcn.1800db1b0
test eax, eax
je 0x1800d8923
mov rcx, qword [rsp + 0x78]
cmp rcx, 0x7f
ja 0x1800d8742
mov byte [rdi], cl
mov rax, qword [rsp + 0x58]
mov qword [rax], 1
xor esi, esi
jmp 0x1800d9090
lea rax, [rcx + 0x1000]
mov rbx, qword [rsp + 0x58]
cmp rax, 0x1fff
ja 0x1800d87a6
mov edx, 0x95
mov r8d, 2
mov eax, edx
sub eax, 0x93
je 0x1800d8792
sub eax, 1
je 0x1800d878d
cmp eax, 1
jne 0x1800d8795
test rcx, rcx
jns 0x1800d8780
add rcx, 0x2000
mov rax, rcx
sar rax, 8
or al, 0xc0
mov byte [rdi], al
jmp 0x1800d8795
mov byte [rdi + 1], cl
jmp 0x1800d8795
mov qword [rbx], r8
dec edx
cmp edx, 0x92
ja 0x1800d8761
xor esi, esi
jmp 0x1800d9090
lea rax, [rcx + 0x8000]
cmp rax, 0xffff
ja 0x1800d8812
mov edx, 0x11f
nop word [rax + rax]
mov eax, edx
sub eax, 0x11f
je 0x1800d87f2
sub eax, 1
je 0x1800d87ed
sub eax, 1
je 0x1800d87e1
cmp eax, 1
jne 0x1800d8801
mov qword [rbx], 3
jmp 0x1800d8801
mov rax, rcx
sar rax, 8
mov byte [rdi + 2], al
jmp 0x1800d8801
mov byte [rdi + 1], cl
jmp 0x1800d8801
test rcx, rcx
jns 0x1800d87fe
add rcx, 0x10000
mov byte [rdi], 0xf1
inc edx
cmp edx, 0x123
jb 0x1800d87c0
xor esi, esi
jmp 0x1800d9090
lea rax, [rcx + 0x800000]
cmp rax, 0xffffff
ja 0x1800d8881
mov edx, 0xa0
mov r8d, 4
nop dword [rax]
mov eax, edx
sub eax, 0xa0
je 0x1800d885e
sub eax, 1
je 0x1800d8848
cmp eax, 1
jne 0x1800d8870
mov qword [rbx], r8
jmp 0x1800d8870
mov rax, rcx
sar rax, 8
mov byte [rdi + 2], al
mov rax, rcx
sar rax, 0x10
mov byte [rdi + 3], al
jmp 0x1800d8870
test rcx, rcx
jns 0x1800d886a
add rcx, 0x1000000
mov byte [rdi], 0xf2
mov byte [rdi + 1], cl
inc edx
cmp edx, 0xa3
jb 0x1800d8830
xor esi, esi
jmp 0x1800d9090
mov r8d, 0xc8
mov rdx, qword [rbp + 0x560]
nop
mov eax, r8d
sub eax, 0xc8
je 0x1800d8906
sub eax, 1
je 0x1800d88e3
sub eax, 1
je 0x1800d88d7
sub eax, 1
je 0x1800d88b7
cmp eax, 1
jne 0x1800d890c
mov qword [rbx], 9
jmp 0x1800d890c
mov rax, rdx
shr rax, 0x28
mov byte [rdi + 6], al
mov rax, rdx
shr rax, 0x30
mov byte [rdi + 7], al
mov rax, rdx
shr rax, 0x38
mov byte [rdi + 8], al
jmp 0x1800d890c
mov rax, rdx
shr rax, 0x20
mov byte [rdi + 5], al
jmp 0x1800d890c
mov byte [rdi + 1], dl
mov rax, rdx
shr rax, 8
mov byte [rdi + 2], al
mov rax, rdx
shr rax, 0x10
mov byte [rdi + 3], al
mov rax, rdx
shr rax, 0x18
mov byte [rdi + 4], al
jmp 0x1800d890c
mov rdx, rcx
mov byte [rdi], 0xf4
inc r8d
cmp r8d, 0xcd
jb 0x1800d8890
xor esi, esi
jmp 0x1800d9090
mov eax, dword [rsi]
mov esi, 1
cmp eax, 0x40
jae 0x1800d8941
mov ebx, esi
lea ecx, [rbx + rax]
mov rax, qword [rsp + 0x58]
mov qword [rax], rcx
jmp 0x1800d9090
cmp eax, 0x1000
mov r8d, 2
cmovb ebx, r8d
lea ecx, [rbx + rax]
mov rax, qword [rsp + 0x58]
mov qword [rax], rcx
jmp 0x1800d9090
mov qword [rbp - 0x10], rcx
jmp 0x1800d8dfe
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
lea rax, [rbp + 0x590]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800d8985
lea rdx, [rbp + 0x590]
lea rcx, [rbp + 0x1d0]
call fcn.1800c4cb0
mov r8d, 1
lea rdx, [0x1801063ec]
lea rcx, [rbp + 0x1f0]
call fcn.1800c4cb0
jmp 0x1800d8df2
lea r8, [rbp + 0x240]
lea rdx, [rbp + 0x1d0]
mov ecx, 0x16
call fcn.180027f00
mov eax, 0x1bb
mov word [rsp + 0x50], ax
mov r9d, 0x93
lea r8, [rbp + 0x40]
lea rdx, [0x1801213a8]
lea rcx, [rsp + 0x50]
call fcn.1800b3920
jmp 0x1800d8df2
cmp r14d, 0x378
je 0x1800d8a59
cmp r14d, 0x42d
jne 0x1800d8dfe
call qword [sym.imp.WINMM.dll_midiOutGetNumDevs]
mov dword [rsp + 0x70], eax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x78], rax
mov rdx, qword [rbp - 0x58]
cmp rdx, qword [rbp - 0x50]
je 0x1800d8a46
lea rax, [rbp + 0x40]
mov qword [rdx], rax
add qword [rbp - 0x58], 8
jmp 0x1800d8df2
lea r8, [rsp + 0x78]
lea rcx, [rbp - 0x60]
call fcn.180006660
jmp 0x1800d8df2
mov qword [rbp - 0x78], rcx
mov word [rsp + 0x50], ax
lea r9, [rsp + 0x50]
lea r8, [rbp + 0x10]
lea rdx, [0x1801213c8]
mov ecx, 0xcd
call fcn.180081260
lea r9, [rbp - 0x60]
xor edx, edx
xor ecx, ecx
mov r8d, 0xf6
call fcn.180063170
jmp 0x1800d8df2
mov dword [rsp + 0x60], 3
xor edx, edx
mov r8d, 0x2d8
lea rcx, [rbp + 0x280]
call sub.VCRUNTIME140.dll_memset
lea rax, [rbp + 0x10]
mov qword [rsp + 0x78], rax
mov rax, qword [rbp - 0x58]
cmp rax, qword [rbp - 0x50]
je 0x1800d8ad4
lea rcx, [rbp + 0x10]
mov qword [rax], rcx
add qword [rbp - 0x58], 8
jmp 0x1800d8df2
lea r8, [rsp + 0x78]
mov rdx, qword [rbp - 0x58]
lea rcx, [rbp - 0x60]
call fcn.180006660
jmp 0x1800d8df2
cmp r14d, 0x7b6
ja 0x1800d8d74
je 0x1800d8ce8
cmp r14d, 0x597
je 0x1800d8b4d
cmp r14d, 0x64c
je 0x1800d8b2a
cmp r14d, 0x701
jne 0x1800d8dfe
mov dword [rsp + 0x58], 0x2d8
jmp 0x1800d8dfe
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [rbp - 0x70], 0x100b
cmp dword [rsp + 0x70], 0
jne 0x1800d8df2
xor sil, sil
jmp 0x1800d8df2
mov eax, dword [0x1801213f0]
mov dword [rsp + 0x68], eax
mov r9d, 0x57
xor r8d, r8d
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x60]
call fcn.18003ee20
lea rax, [rbp - 0x60]
mov qword [rbp + 0x570], rax
mov eax, dword [0x1801213f0]
mov dword [rbp + 0x578], eax
mov eax, dword [0x1801213f4]
mov dword [rbp + 0x57c], eax
movaps xmm0, xmmword [rbp + 0x570]
movdqa xmmword [rbp], xmm0
xor eax, eax
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], eax
lea r9, [rbp]
lea r8, [0x18007d3a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x68], rax
cmp rax, 0
jne 0x1800d8ce0
mov ebx, 0xe5
cmp ebx, 0xe5
je 0x1800d8ca4
cmp ebx, 0x19f1
je 0x1800d8c7e
cmp ebx, 0x32fd
jne 0x1800d8cc4
test dil, dil
je 0x1800d9054
mov esi, 0xed
mov dword [rsp + 0x68], esi
lea rdx, [0x180000000]
mov r8d, 0x41
lea r9d, [r8 + 0x2b]
mov r11d, 0x4f49
lea r10d, [rsi - 0x80]
movzx r14d, byte [rsp + 0x50]
mov r15, qword [rbp + 0x560]
mov r12d, dword [rsp + 0x58]
mov r13d, dword [rsp + 0x60]
nop dword [rax]
mov eax, esi
sub eax, 0xe9
je 0x1800d901d
sub eax, 1
je 0x1800d8e72
sub eax, 1
je 0x1800d8e4b
sub eax, 1
je 0x1800d8e15
cmp eax, 1
jne 0x1800d9027
movzx r14d, al
mov byte [rsp + 0x50], al
jmp 0x1800d9027
mov r8d, 0x104
lea rdx, [rbp + 0x6c0]
mov rcx, r12
call sub.IMM32.dll_ImmGetIMEFileNameW
xor ecx, ecx
movzx eax, dil
test r15d, r15d
cmovne ecx, eax
movzx edi, cl
jmp 0x1800d8cc4
mov dil, 1
xor r12d, r12d
mov qword [rbp - 0x80], 0xffffffffffffffff
xor r8d, r8d
xor edx, edx
lea rcx, [rdx - 1]
call qword [sym.imp.dbghelp.dll_SymInitialize]
mov r15d, eax
add ebx, 0x190c
cmp ebx, 0x4b24
jbe 0x1800d8bd1
mov rbx, qword [rsp + 0x68]
jmp 0x1800d8df2
mov rbx, rax
jmp 0x1800d8df2
mov qword [rsp + 0x78], rdx
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r9d, 0x55
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800a8ad0
mov qword [rsp + 0x28], 0
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
lea r9, [0x180121340]
xor r8d, r8d
lea rdx, [rbp + 0xa0]
lea ecx, [r8 + 0x46]
call fcn.18000e3f0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x31
xor r9d, r9d
lea r8, [rbp + 0xa0]
xor edx, edx
xor ecx, ecx
call fcn.18000d5f0
lea r9, [rbp - 0x70]
mov r8d, dword [rsp + 0x60]
mov rdx, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x10]
call sub.IMM32.dll_ImmEscapeW
jmp 0x1800d8df2
cmp r14d, 0x86b
je 0x1800d8dd9
cmp r14d, 0x920
jne 0x1800d8dfe
test sil, sil
je 0x1800d9088
mov ebx, 0xdf
mov edi, dword [rsp + 0x58]
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xde
je 0x1800d905b
cmp eax, 1
jne 0x1800d9075
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x58]
xor ecx, ecx
call qword [sym.imp.WINMM.dll_midiOutGetID]
mov edi, eax
test eax, eax
jne 0x1800d9075
xor sil, sil
jmp 0x1800d9075
mov r8d, dword [rsp + 0x58]
lea rdx, [rbp + 0x280]
mov rcx, qword [rbp + 0x560]
call qword [sym.imp.WINMM.dll_joyGetDevCapsW]
mov eax, 0x1bb
lea rdx, [0x18000f810]
add r14d, 0xb5
cmp r14d, r13d
jae 0x1800d908c
xor ecx, ecx
jmp 0x1800d8680
mov r15, 0xffffffffffffffff
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
xor r8d, r8d
xor edx, edx
mov rcx, r15
call qword [sym.imp.dbghelp.dll_SymInitialize]
mov r13d, eax
mov dword [rsp + 0x60], eax
mov dword [rbp + 0x70], 0x20
jmp 0x1800d9027
lea rdx, [rbp + 0x70]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.dbghelp.dll_SymGetSymNext64]
xor ecx, ecx
movzx eax, r14b
test r13d, r13d
cmovne ecx, eax
movzx r14d, cl
mov byte [rsp + 0x50], cl
jmp 0x1800d9027
test r14b, r14b
je 0x1800d9027
mov ebx, 9
lea edi, [rbx + 1]
lea esi, [rbx + 0x3a]
lea r14d, [rbx + 0x4b]
nop word [rax + rax]
cmp ebx, 9
ja case.default.0x1800d8ea5
mov eax, ebx
mov ecx, dword [rdx + rax*4 + 0xd9328]
add rcx, rdx
jmp rcx
mov rcx, r15
call qword [sym.imp.dbghelp.dll_SymCleanup]
lea rdx, [0x180000000]
mov r8d, 0x41
lea r9d, [r8 + 0x2b]
lea r10d, [r8 + 0x2c]
mov r11d, 0x4f49
jmp case.default.0x1800d8ea5
mov word [rbp + 0x574], r8w
mov dword [rbp + 0x575], 0x4c5f4547
mov eax, 0x4f
mov word [rbp + 0x579], ax
jmp case.default.0x1800d8ea5
mov word [rbp + 0x57a], si
mov word [rbp + 0x57b], r8w
mov word [rbp + 0x57c], r14w
jmp case.default.0x1800d8ea5
mov r8d, 2
lea rdx, [0x180110424]
lea rcx, [rbp + 0x565]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, 0x79
mov word [rbp + 0x566], ax
mov eax, dword [str.outRa]
mov dword [rbp + 0x567], eax
movzx eax, word [0x180116374]
mov word [rbp + 0x56b], ax
jmp 0x1800d8eb0
mov word [rbp + 0x564], r9w
jmp case.default.0x1800d8ea5
xor ecx, ecx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rcx
lea rax, [rbp + 0x5b0]
mov qword [rsp + 0x38], rax
mov eax, 2
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r12d
xor r9d, r9d
lea r8, [rbp + 0x570]
lea rdx, [rbp + 0x560]
mov rcx, r15
call qword [sym.imp.dbghelp.dll_SymFindFileInPath]
jmp 0x1800d8eb0
movzx eax, word [0x1801073e4]
mov word [rbp + 0x56c], ax
movzx eax, byte [0x1801073e6]
mov byte [rbp + 0x56e], al
mov dword [rbp + 0x570], 0x3f4150
mov eax, 0x4b
mov word [rbp + 0x573], ax
jmp case.default.0x1800d8ea5
mov dword [rbp + 0x57d], 0x4e4f49
jmp case.default.0x1800d8ea5
mov word [rbp + 0x560], r10w
mov dword [rbp + 0x561], 0x507861
jmp case.default.0x1800d8ea5
xor r12d, r12d
dec ebx
sub rdi, 1
jne 0x1800d8e90
mov esi, dword [rsp + 0x68]
movzx r14d, byte [rsp + 0x50]
mov r13d, dword [rsp + 0x60]
jmp 0x1800d9027
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.dbghelp.dll_SymCleanup]
dec esi
mov dword [rsp + 0x68], esi
cmp esi, 0xe8
lea rdx, [0x180000000]
mov r8d, 0x41
lea r9d, [r8 + 0x2b]
lea r10d, [r8 + 0x2c]
mov r11d, 0x4f49
ja 0x1800d8c40
mov esi, 1
jmp 0x1800d9090
test sil, sil
je 0x1800d9075
mov r8d, 0x104
lea rdx, [rbp + 0x5b0]
mov ecx, edi
call qword [sym.imp.WINMM.dll_midiOutGetErrorTextA]
dec ebx
cmp ebx, 0xdd
mov ecx, 0
ja 0x1800d8da0
xor esi, esi
jmp 0x1800d9090
mov esi, dword [rsp + 0x58]
lea rcx, [rbp + 0x118]
call fcn.1800086e0
mov rbx, qword [rbp + 0x100]
test rbx, rbx
je 0x1800d911a
mov rdi, qword [rbp + 0x108]
cmp rbx, rdi
je 0x1800d90cc
mov rcx, rbx
call fcn.1800bd110
add rbx, 0x20
cmp rbx, rdi
jne 0x1800d90b4
mov rbx, qword [rbp + 0x100]
mov rdx, qword [rbp + 0x110]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800d90fb
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800d9158
mov rcx, rbx
call fcn.1800fd224
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x100], xmm0
xor r14d, r14d
mov qword [rbp + 0x110], r14
jmp 0x1800d911d
xor r14d, r14d
mov rcx, qword [rbp + 0xe8]
test rcx, rcx
je 0x1800d9176
mov rdx, qword [rbp + 0xf8]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800d915f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800d915f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fd224
mov qword [rbp + 0xe8], r14
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xf0], xmm0
lea rcx, [rbp + 0xa8]
call fcn.180008610
nop
mov rbx, qword [rbp - 0x48]
test rbx, rbx
je 0x1800d921b
mov rdi, qword [rbp - 0x40]
cmp rbx, rdi
je 0x1800d91b5
nop dword [rax]
mov rcx, rbx
call fcn.180007f20
add rbx, 0x28
cmp rbx, rdi
jne 0x1800d91a0
mov rbx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x38]
sub rcx, rbx
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*4]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800d9207
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800d9207
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.1800fd224
mov qword [rbp - 0x48], r14
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x40], xmm0
mov rdx, qword [rbp - 0x60]
test rdx, rdx
je 0x1800d9244
mov r8, qword [rbp - 0x50]
sub r8, rdx
sar r8, 3
lea rcx, [rbp - 0x60]
call fcn.1800c8f30
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r14
mov rdx, qword [rbp + 0x32]
cmp rdx, 0x10
jb 0x1800d9282
inc rdx
mov rcx, qword [rbp + 0x1a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800d927d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800d927d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fd224
movdqa xmm0, xmmword [0x180119950]
movdqu xmmword [rbp + 0x2a], xmm0
mov byte [rbp + 0x1a], 0
mov rdx, qword [rbp + 0x62]
cmp rdx, 0x10
jb 0x1800d92d1
inc rdx
mov rcx, qword [rbp + 0x4a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800d92cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800d92cc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fd224
movdqa xmm0, xmmword [0x180119950]
movdqu xmmword [rbp + 0x5a], xmm0
mov byte [rbp + 0x4a], 0
lea rcx, [rbp + 0x240]
call fcn.180008280
nop
lea rcx, [rbp + 0x1d0]
call fcn.180008330
mov eax, esi
mov rcx, qword [rbp + 0x8d0]
xor rcx, rsp
call fcn.1800fd9d0
mov rbx, qword [rsp + 0xa38]
add rsp, 0x9e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret