Function at 0x180030080
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xe20]
sub rsp, 0xf20
mov rax, qword [0x1800737f8]
xor rax, rsp
mov qword [rbp + 0xe10], rax
mov rdi, r8
mov ebx, edx
mov dword [rsp + 0x54], edx
mov r12, rcx
movdqa xmm0, xmmword [0x18006c680]
movdqa xmmword [rbp + 0x1f0], xmm0
mov byte [rbp + 0x1e0], 0
movdqa xmm1, xmm0
movdqa xmmword [rbp + 0x210], xmm0
mov byte [rbp + 0x200], 0
movdqa xmmword [rbp + 0x230], xmm0
mov byte [rbp + 0x220], 0
movdqa xmmword [rbp + 0x260], xmm0
mov byte [rbp + 0x250], 0
movdqa xmmword [rbp + 0x280], xmm0
mov byte [rbp + 0x270], 0
xor ecx, ecx
mov qword [rbp + 0x80], rcx
mov word [rbp + 0x88], cx
movdqu xmmword [rbp + 0x9a], xmm0
mov byte [rbp + 0x8a], cl
mov qword [rbp + 0x50], rcx
mov word [rbp + 0x58], cx
movdqu xmmword [rbp + 0x6a], xmm0
mov byte [rbp + 0x5a], 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 + 0xb0], rcx
mov qword [rbp + 0xb8], rcx
mov qword [rbp + 0xc0], rcx
mov ecx, 0x30
call fcn.18005fccc
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0xb8], rax
xor r8d, r8d
mov qword [rbp + 0xc8], r8
xorps xmm2, xmm2
movsd qword [rbp + 0xd0], xmm2
mov qword [rbp + 0xd8], r8
mov dword [rbp + 0xe0], 1
mov qword [rbp + 0xe8], r8
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xf0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x100], xmm1
movdqa xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r8
mov qword [rbp + 0x128], 0xffffffffffffffff
mov dword [rbp + 0x130], r8d
xor eax, eax
movups xmmword [rbp + 0x138], xmm0
movups xmmword [rbp + 0x148], xmm0
movups xmmword [rbp + 0x158], xmm0
movups xmmword [rbp + 0x168], xmm0
mov qword [rbp + 0x178], rax
movdqa xmm0, xmmword [0x18006c680]
movdqa xmmword [rbp + 0x190], xmm0
mov byte [rbp + 0x180], al
mov word [rbp + 0x1a0], r8w
mov dword [rbp + 0x1a4], r8d
mov qword [rbp + 0x1a8], r8
xorps xmm0, xmm0
movaps xmmword [rbp + 0x1b0], xmm0
movsd qword [rbp + 0x1c0], xmm2
mov byte [rbp + 0x1c8], al
mov qword [rbp + 0x1cc], r8
mov r14d, ebx
lea eax, [rbx + 0x524]
lea r10, [0x180000000]
mov r11d, 0x1bb
cmp ebx, eax
jae 0x18003097f
lea ecx, [r8 + 0x6e]
mov r15, qword [rbp + 0xe00]
mov rsi, qword [rbp + 0xe00]
movzx r13d, byte [rsp + 0x58]
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x50], al
mov r11d, 0x61
lea r10d, [r11 + 0x11]
lea r9d, [r11 + 8]
mov r8d, 0x6169
lea edx, [r11 - 0x33]
cmp r14d, 0x23f
ja 0x18003052b
je 0x18003050b
cmp r14d, 0x183
ja 0x180030469
je 0x1800303be
mov eax, r14d
sub eax, 0xcf
je 0x1800303a1
sub eax, 0x56
je 0x180030320
mov r11d, 0x1bb
cmp eax, 8
jne 0x1800308f1
mov word [rbp + 0xe03], cx
mov word [rbp + 0xe04], r8w
jmp 0x1800308f1
mov r8, qword [rdi + 0x88]
mov ecx, 0xc8
nop dword [rax]
mov eax, ecx
sub eax, 0xd
je 0x180030354
sub eax, 0x44
je 0x18003034a
sub eax, 0x77
je 0x180030364
cmp eax, 0x529
je 0x180030382
jmp 0x180030354
xor eax, eax
mov qword [r8 + 0x30], rax
mov qword [r8 + 0x18], rax
add ecx, 0x5aa0
cmp ecx, 0x16a80
ja 0x180030382
jmp 0x180030330
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
mov r9d, 0xaf
mov r8, qword [r8]
xor edx, edx
xor ecx, ecx
call fcn.180037540
xor r8d, r8d
lea ecx, [r8 + 0x6e]
mov r11d, 0x1bb
test r12, r12
je 0x1800308f4
mov dword [r12], r8d
jmp 0x1800308f4
mov word [rbp + 0xe00], r9w
mov word [rbp + 0xe01], r10w
mov word [rbp + 0xe02], r11w
jmp 0x1800308eb
mov rcx, qword [rdi + 0x78]
test rcx, rcx
je 0x1800303e6
dec rcx
mov qword [rdi + 0x78], rcx
mov rax, qword [rdi + 0x70]
mov r15, qword [rax + rcx*8]
mov rsi, r15
shl rsi, 5
add rsi, qword [rdi + 0x58]
jmp 0x1800308e6
mov ecx, 0xae
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xad
je 0x18003044b
cmp eax, 1
jne 0x18003044f
mov r15, qword [rdi + 0x60]
cmp r15, qword [rdi + 0x68]
jb 0x18003044f
mov r8, qword [rdi + 0x88]
mov ecx, 0xaf
nop dword [rax]
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xaf
je 0x18003096b
cmp eax, 0x6b
je 0x180030978
add ecx, 0x70cb
cmp ecx, 0xe196
jbe 0x180030420
xor ebx, ebx
jmp 0x180030e37
inc qword [rdi + 0x60]
dec ecx
cmp ecx, 0xac
ja 0x1800303f0
mov rsi, r15
shl rsi, 5
add rsi, qword [rdi + 0x58]
jmp 0x1800308e6
mov eax, r14d
sub eax, 0x18b
je 0x180030872
sub eax, 0x56
je 0x18003049a
xor r8d, r8d
mov r11d, 0x1bb
cmp eax, 8
jne 0x1800308f4
mov word [rbp + 0xe07], dx
jmp 0x1800308f4
mov rax, qword [rdi]
mov qword [rsp + 0x60], rax
mov r9, r12
mov r8d, 0x3b
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.180007fc0
mov qword [rsi], rax
test r12, r12
je 0x1800308e6
cmp dword [r12], 0
je 0x1800308e6
mov r8, qword [rdi + 0x88]
mov ecx, 0xaf
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xaf
je 0x18003096b
cmp eax, 0x6b
je 0x180030978
add ecx, 0x70cb
cmp ecx, 0xe196
jbe 0x1800304e0
xor ebx, ebx
jmp 0x180030e37
mov rax, qword [rsi]
xor r8d, r8d
mov qword [rax + 0x18], r8
mov rax, qword [rsi]
mov qword [rax + 0x20], r8
mov qword [rsi + 0x18], r8
mov r11d, 0x1bb
jmp 0x1800308f4
cmp r14d, 0x2fb
ja 0x18003087b
je 0x1800307f2
mov eax, r14d
sub eax, 0x247
je 0x1800307e3
sub eax, 0x56
je 0x180030701
cmp eax, 8
jne 0x1800308eb
mov dword [rsp + 0x28], 0x50
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x180073708]
xor edx, edx
xor ecx, ecx
call fcn.180048ff0
test al, al
jne 0x1800306ee
mov ebx, 8
nop
cmp ebx, 8
ja case.default.0x1800305ac
mov eax, ebx
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x310c4]
add rcx, rdx
jmp rcx
mov dword [rsp + 0x74], 2
jmp case.default.0x1800305ac
cmp byte [rsp + 0x58], 0
je 0x1800305cc
mov rcx, qword [rbp - 0x70]
call qword [sym.imp.GDI32.dll_DeleteColorSpace]
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x10]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x30], eax
lea rax, [rbp + 0x3e0]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x78]
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x30]
mov r8d, dword [rsp + 0x78]
mov edx, dword [rsp + 0x70]
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.ADVAPI32.dll_CreateRestrictedToken]
cmp qword [rbp - 0x80], 0
jne case.default.0x1800305ac
xor r13b, r13b
jmp case.default.0x1800305ac
mov byte [rsp + 0x58], 1
mov dword [rsp + 0x70], 1
jmp case.default.0x1800305ac
mov r13b, 1
mov qword [rbp - 0x68], 0
jmp case.default.0x1800305ac
mov dword [rbp - 0x78], 2
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x3e0], xmm0
mov qword [rbp + 0x3f0], rax
lea rcx, [rbp + 0x290]
call qword [sym.imp.GDI32.dll_CreateColorSpaceA]
mov qword [rbp - 0x70], rax
jmp case.default.0x1800305ac
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x20], xmm0
xor eax, eax
mov qword [rbp - 0x80], rax
mov ecx, eax
movzx eax, byte [rsp + 0x58]
cmp qword [rbp - 0x70], rcx
cmovne ecx, eax
mov byte [rsp + 0x58], cl
jmp case.default.0x1800305ac
mov dword [rsp + 0x78], 2
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
xor edx, edx
mov r8d, 0x148
lea rcx, [rbp + 0x290]
call sub.VCRUNTIME140.dll_memset
jmp case.default.0x1800305ac
test r13b, r13b
je 0x1800306cf
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [rsp + 0x68], 1
dec ebx
lea eax, [rbx + 0x11c]
cmp eax, 0x11b
ja 0x180030590
mov ebx, dword [rsp + 0x54]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
jmp 0x1800308e6
mov rax, qword [rdi]
mov qword [rsi + 0x10], rax
lea rax, [rax*8]
mov qword [rsp + 0x60], rax
xor r8d, r8d
mov edx, 0x8d
lea rcx, [rsp + 0x60]
call fcn.180040f30
mov qword [rsi + 8], rax
test rax, rax
jne 0x1800308e6
mov ebx, 0x11a
nop dword [rax]
cmp ebx, 0x11a
je 0x1800307ad
cmp ebx, 0xa0d4
je 0x18003075e
cmp ebx, 0x1408e
je case.0x1800305ac.0
jmp 0x1800307ba
mov r8, qword [rdi + 0x88]
mov ecx, 0xaf
nop word [rax + rax]
mov eax, ecx
sub eax, 0xaf
je 0x180030796
cmp eax, 0x6b
je 0x1800307a3
add ecx, 0x70cb
cmp ecx, 0xe196
jbe 0x180030770
xor r8d, r8d
mov qword [rsp + 0x68], r8
jmp 0x1800307bd
mov edx, reloc.SHELL32.dll_ILRemoveLastID
mov rcx, qword [r8]
call fcn.180036780
xor r8d, r8d
mov qword [rsp + 0x68], r8
jmp 0x1800307bd
test r12, r12
je 0x1800307ba
mov dword [r12], 3
xor r8d, r8d
add ebx, 0x9fba
cmp ebx, 0x1df2e
jbe 0x180030740
mov ebx, dword [rsp + 0x54]
mov ecx, 0x6e
mov r11d, 0x1bb
jmp 0x1800308f4
mov dword [rbp + 0xe08], 0x6d6f63
jmp 0x1800308eb
mov ebx, 0x9b
cmp ebx, 0x9b
je 0x18003081c
cmp ebx, 0x4506
je 0x180030815
cmp ebx, 0x8971
je case.0x1800305ac.0
jmp 0x18003085b
mov qword [rsp + 0x68], r15
jmp 0x18003085b
mov r8, qword [rdi + 0x88]
mov ecx, 0xaf
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xaf
je 0x18003084e
cmp eax, 0x6b
je 0x18003085b
add ecx, 0x70cb
cmp ecx, 0xe196
jbe 0x180030830
jmp 0x18003085b
mov edx, reloc.SHELL32.dll_ILRemoveLastID
mov rcx, qword [r8]
call fcn.180036780
add ebx, 0x446b
cmp ebx, 0xcd41
jbe 0x1800307f7
mov ebx, dword [rsp + 0x54]
mov ecx, 0x6e
mov word [rbp + 0xe06], cx
jmp 0x1800308eb
mov eax, r14d
sub eax, 0x303
je 0x18003089d
mov r11d, 0x1bb
xor r8d, r8d
cmp eax, 0x5e
jne 0x1800308f4
mov word [rbp + 0x240], r11w
jmp 0x1800308f4
mov byte [rsp + 0x50], 1
lea rax, [rbp + 0xe00]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800308b0
lea rdx, [rbp + 0xe00]
lea rcx, [rbp + 0x1e0]
call fcn.1800203c0
mov r8d, 1
lea rdx, reloc.SHELL32.dll_PathMakeUniqueName
lea rcx, [rbp + 0x200]
call fcn.1800203c0
mov ecx, 0x6e
mov r11d, 0x1bb
xor r8d, r8d
add r14d, 0x5e
lea eax, [rbx + 0x524]
cmp r14d, eax
jb 0x1800302ac
movzx edx, byte [rsp + 0x50]
lea r10, [0x180000000]
lea r15d, [rbx - 0xd]
mov dword [rbp - 0x78], r15d
cmp ebx, r15d
jbe case.0x1800305ac.0
add ebx, 0xffffff3d
mov dword [rsp + 0x58], ebx
lea r9, [0x1800065e0]
movzx edi, byte [rsp + 0x58]
movzx r13d, byte [rsp + 0x58]
mov r14d, dword [rsp + 0x78]
mov rsi, qword [rbp + 0xe00]
mov r12, qword [rsp + 0x60]
mov eax, dword [rsp + 0x54]
cmp ebx, 0xc
ja case.default.0x180030969
mov ecx, dword [r10 + rbx*4 + 0x310e8]
add rcx, r10
jmp rcx
mov edx, reloc.SHELL32.dll_ILRemoveLastID
mov rcx, qword [r8]
call fcn.180036780
xor ebx, ebx
jmp 0x180030e37
movzx edx, byte [rsp + 0x58]
mov byte [rsp + 0x50], dl
jmp 0x180030913
mov qword [rbp - 8], r8
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], r8
xor r9d, r9d
lea r8d, [r9 + 0x79]
lea rdx, [rbp + 0x220]
xor ecx, ecx
call fcn.180013b40
lea rax, [rbp + 0x1e0]
mov qword [rsp + 0x20], rax
mov r9d, 0xc7
xor r8d, r8d
lea rdx, [rbp + 0x250]
xor ecx, ecx
call fcn.180008650
jmp 0x180030df7
mov qword [rsp + 0x28], r8
mov dword [rsp + 0x20], r8d
lea r9, [rbp]
lea r8, [0x180011450]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rbp - 0x68], rax
jmp 0x180030df7
mov word [rsp + 0x58], r11w
mov r9d, 0x52
lea r8, [rsp + 0x58]
lea rdx, [rbp + 0x80]
lea rcx, [0x180073768]
call fcn.180023f30
mov dword [rsp + 0x78], 0
mov eax, 0x1bb
mov word [rsp + 0x58], ax
lea r9, [rbp + 0x50]
lea r8, [0x180073788]
lea rdx, [rsp + 0x58]
mov ecx, 0x126
call fcn.180013210
jmp 0x180030df7
xor edx, edx
mov r8d, 0xa00
lea rcx, [rbp + 0x400]
call sub.VCRUNTIME140.dll_memset
xor r9d, r9d
xor edx, edx
lea r8d, [r9 + 0x2c]
lea rcx, [rbp - 0x60]
call fcn.1800101a0
jmp 0x180030df7
test dl, dl
je 0x180030a9b
lea r9, [rbp - 0x10]
mov r8d, 0x80
lea rdx, [rbp + 0x400]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReadConsoleInputA]
xor r8d, r8d
mov edx, dword [rsp + 0x78]
mov rcx, qword [rbp - 8]
call qword [sym.imp.GDI32.dll_GetRegionData]
jmp 0x180030df7
lea rax, [rbp + 0x80]
mov qword [rsp + 0x60], rax
mov rax, qword [rbp - 0x58]
cmp rax, qword [rbp - 0x50]
je 0x180030adb
lea rcx, [rbp + 0x80]
mov qword [rax], rcx
add qword [rbp - 0x58], 8
jmp case.0x180030969.5
lea r8, [rsp + 0x60]
mov rdx, qword [rbp - 0x58]
lea rcx, [rbp - 0x60]
call fcn.1800013c0
jmp 0x180030df7
mov ecx, r8d
movzx eax, dl
cmp r12, 0xffffffffffffffff
cmovne ecx, eax
movzx edx, cl
mov byte [rsp + 0x50], cl
jmp case.0x180030969.5
mov qword [rsp + 0x60], r9
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x60]
mov ecx, 0xca
call fcn.18003bfe0
jmp 0x180030df7
lea r9, [rbp + 0xb0]
lea r8, [rbp - 0x60]
lea rdx, [0x180073700]
mov ecx, 5
call fcn.1800064b0
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xb0]
xor edx, edx
xor ecx, ecx
lea r8d, [rax + 0x76]
call fcn.180034cc0
jmp 0x180030df7
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [rsp + 0x60], rax
mov rax, qword [rbp - 0x68]
test rax, rax
jne 0x180030d63
mov r12d, PathYetAnotherMakeUniqueName
nop
cmp r12d, 0x93f0
ja 0x180030c26
je 0x180030bef
cmp r12d, 0x48
je 0x180030be3
cmp r12d, 0x3180
je 0x180030bcd
cmp r12d, 0x62b8
jne 0x180030d43
mov rcx, qword [rbp - 0x70]
call sub.IMM32.dll_ImmGetOpenStatus
mov dword [rsp + 0x70], eax
jmp 0x180030d43
xor eax, eax
mov qword [rbp + 0xe00], rax
mov qword [rbp - 0x70], rax
mov dword [rsp + 0x74], eax
jmp 0x180030d43
mov dil, 1
movzx r13d, dil
jmp 0x180030d43
lea rdx, [rsp + 0x74]
mov rcx, qword [rbp + 0xe00]
call qword [sym.imp.WINMM.dll_midiInGetID]
mov r14d, eax
xor eax, eax
mov edx, eax
movzx ecx, r13b
cmp dword [rsp + 0x70], eax
cmovne edx, ecx
movzx r13d, dl
movzx edi, dil
test r14d, r14d
cmovne edi, eax
jmp 0x180030d43
cmp r12d, 0xc528
je 0x180030c41
cmp r12d, 0xf660
je case.0x1800305ac.0
jmp 0x180030d43
test r13b, r13b
je 0x180030c53
mov edx, dword [rsp + 0x70]
mov rcx, qword [rbp - 0x70]
call sub.IMM32.dll_ImmSetOpenStatus
test dil, dil
je 0x180030d3b
mov r15d, 0xd3
cmp r15d, 0xd3
je 0x180030d06
cmp r15d, 0x41f0
jne 0x180030d27
xor edx, edx
mov ecx, edx
movzx eax, dil
test r14d, r14d
cmove ecx, eax
movzx edi, cl
test cl, cl
je 0x180030d27
mov ebx, 0x120
nop word [rax + rax]
mov eax, ebx
sub eax, 0x120
je 0x180030d01
cmp eax, 1
jne 0x180030cd4
xor r8d, r8d
mov rdx, rsi
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.WINMM.dll_midiConnect]
mov r14d, eax
test eax, eax
je 0x180030ce0
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.WINMM.dll_midiOutClose]
xor dil, dil
xor edx, edx
inc ebx
cmp ebx, 0x122
jb 0x180030ca0
jmp 0x180030d27
test dil, dil
je 0x180030cd2
xor r8d, r8d
mov rdx, rsi
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.WINMM.dll_midiDisconnect]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.WINMM.dll_midiOutClose]
jmp 0x180030cd2
mov rsi, rdx
jmp 0x180030cd4
xor eax, eax
mov qword [rbp - 0x80], rax
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
mov edx, dword [rsp + 0x74]
lea rcx, [rbp - 0x80]
call qword [sym.imp.WINMM.dll_midiOutOpen]
mov r14d, eax
add r15d, 0x411d
cmp r15d, 0x823a
jbe 0x180030c62
mov dword [rsp + 0x68], 1
add r12d, 0x3138
cmp r12d, 0x12750
jbe 0x180030b90
mov ebx, dword [rsp + 0x58]
mov r15d, dword [rbp - 0x78]
mov rax, qword [rbp - 0x68]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r12, qword [rsp + 0x60]
jmp 0x180030df7
lea rax, [rbp + 0x50]
mov qword [rsp + 0x60], rax
mov rax, qword [rbp - 0x58]
cmp rax, qword [rbp - 0x50]
je 0x180030d97
lea rcx, [rbp + 0x50]
mov qword [rax], rcx
add qword [rbp - 0x58], 8
jmp 0x180030da9
lea r8, [rsp + 0x60]
mov rdx, qword [rbp - 0x58]
lea rcx, [rbp - 0x60]
call fcn.1800013c0
mov eax, dword [0x1800737b0]
mov dword [rsp + 0x58], eax
lea r9, [rbp - 0x60]
lea r8, [rsp + 0x58]
xor edx, edx
mov ecx, 0x8f
call fcn.18005dec0
lea rax, [rbp - 0x60]
mov qword [rbp + 0x3e0], rax
mov eax, dword [0x1800737b0]
mov dword [rbp + 0x3e8], eax
mov eax, dword [0x1800737b4]
mov dword [rbp + 0x3ec], eax
movaps xmm0, xmmword [rbp + 0x3e0]
movdqa xmmword [rbp], xmm0
lea r9, [0x1800065e0]
movzx edx, byte [rsp + 0x50]
mov eax, dword [rsp + 0x54]
dec eax
mov dword [rsp + 0x54], eax
dec ebx
mov dword [rsp + 0x58], ebx
cmp eax, r15d
jbe case.0x1800305ac.0
xor r8d, r8d
lea r10, [0x180000000]
mov r11d, 0x1bb
jmp 0x180030955
mov dword [rsp + 0x68], r8d
mov rbx, qword [rsp + 0x68]
lea rcx, [rbp + 0x128]
call fcn.180003440
mov rdi, qword [rbp + 0x110]
test rdi, rdi
je 0x180030ecd
mov rsi, qword [rbp + 0x118]
cmp rdi, rsi
je 0x180030e78
nop dword [rax + rax]
mov rcx, rdi
call fcn.180017660
add rdi, 0x20
cmp rdi, rsi
jne 0x180030e60
mov rdi, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x120]
sub rdx, rdi
and rdx, 0xffffffffffffffe0
mov rax, rdi
cmp rdx, 0x1000
jb 0x180030eae
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180030eae
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.18005fd08
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x110], xmm0
xor r14d, r14d
mov qword [rbp + 0x120], r14
jmp 0x180030ed0
xor r14d, r14d
mov rdx, qword [rbp + 0xf8]
test rdx, rdx
je 0x180030f08
mov r8, qword [rbp + 0x108]
sub r8, rdx
sar r8, 4
lea rcx, [rbp + 0xf8]
call fcn.180026b60
mov qword [rbp + 0xf8], r14
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x100], xmm0
lea rcx, [rbp + 0xb8]
call fcn.180003370
nop
mov rdi, qword [rbp - 0x48]
test rdi, rdi
je 0x180030fab
mov rsi, qword [rbp - 0x40]
cmp rdi, rsi
je 0x180030f45
nop dword [rax + rax]
mov rcx, rdi
call fcn.180002c80
add rdi, 0x28
cmp rdi, rsi
jne 0x180030f30
mov rdi, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x38]
sub rcx, rdi
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, rdi
cmp rdx, 0x1000
jb 0x180030f97
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180030f97
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.18005fd08
mov qword [rbp - 0x48], r14
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x40], xmm0
mov rdx, qword [rbp - 0x60]
test rdx, rdx
je 0x180030fd4
mov r8, qword [rbp - 0x50]
sub r8, rdx
sar r8, 3
lea rcx, [rbp - 0x60]
call fcn.180026b10
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r14
mov rdx, qword [rbp + 0x72]
cmp rdx, 0x10
jb 0x180031012
inc rdx
mov rcx, qword [rbp + 0x5a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003100d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18003100d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18005fd08
movdqa xmm0, xmmword [0x18006c680]
movdqu xmmword [rbp + 0x6a], xmm0
mov byte [rbp + 0x5a], 0
mov rdx, qword [rbp + 0xa2]
cmp rdx, 0x10
jb 0x180031067
inc rdx
mov rcx, qword [rbp + 0x8a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031062
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180031062
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18005fd08
movdqa xmm0, xmmword [0x18006c680]
movdqu xmmword [rbp + 0x9a], xmm0
mov byte [rbp + 0x8a], 0
lea rcx, [rbp + 0x250]
call fcn.180002fe0
nop
lea rcx, [rbp + 0x1e0]
call fcn.180003090
mov rax, rbx
mov rcx, qword [rbp + 0xe10]
xor rcx, rsp
call fcn.1800604b0
mov rbx, qword [rsp + 0xf68]
add rsp, 0xf20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret