Function at 0x18002bdc0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x188]
sub rsp, 0x288
movdqa xmm0, xmmword [0x1800bed00]
xor esi, esi
movdqu xmmword [rbp + 0x2a], xmm0
mov r15, rcx
mov rdi, r9
movdqu xmmword [rbp - 0x26], xmm0
mov qword [rbp + 0x10], rsi
lea ecx, [rsi + 0x30]
xorps xmm0, xmm0
mov word [rbp + 0x18], si
mov r12, rdx
mov byte [rbp + 0x1a], sil
mov qword [rbp - 0x40], rsi
mov word [rbp - 0x38], si
mov byte [rbp - 0x36], sil
movdqa xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x68], rsi
movdqa xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x70], rsi
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x50], rsi
call fcn.18008756c
xorps xmm0, xmm0
xorps xmm2, xmm2
xorps xmm1, xmm1
mov ebx, 1
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0x48], rax
xor eax, eax
mov qword [rbp + 0x110], rax
mov byte [rbp + 0x118], al
mov word [rbp + 0x160], ax
mov qword [rbp + 0x58], rsi
mov qword [rbp + 0x68], rsi
mov qword [rbp + 0x70], rsi
mov dword [rbp + 0xc8], esi
mov qword [rbp + 0x128], rsi
mov word [rbp + 0x138], si
mov dword [rbp + 0x13c], esi
mov qword [rbp + 0x140], rsi
movsd qword [rbp + 0x60], xmm2
movsd qword [rbp + 0x158], xmm2
mov dword [rbp + 0x78], ebx
movdqa xmmword [rbp + 0x80], xmm0
movdqa xmmword [rbp + 0x90], xmm1
movdqa xmmword [rbp + 0xa0], xmm0
movdqa xmmword [rbp + 0xb0], xmm1
mov qword [rbp + 0xc0], 0xffffffffffffffff
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0x130], 0xf
movups xmmword [rbp + 0xe0], xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x148], xmm0
mov byte [rbp + 0x162], al
mov eax, dword [rbp + 0x1f0]
lea esi, [rax + 0x11]
mov dword [rsp + 0x30], esi
cmp eax, esi
jae case.0x18002bfa0.243
movsxd r14, dword [rsp + 0x40]
lea rdx, [0x180000000]
mov r13, qword [rbp - 0x48]
lea r9, [0x1800db6d0]
mov ecx, dword [rsp + 0x30]
mov rsi, r14
mov qword [rsp + 0x48], r14
movabs r8, 0x1fffffffffffffff
mov r10d, 0x1bb
nop word [rax + rax]
add eax, 0xffffff1d
cmp eax, 0x28
ja case.default.0x18002bfa0
movzx eax, byte [rdx + rax + 0x2c904]
mov ecx, dword [rdx + rax*4 + 0x2c8bc]
add rcx, rdx
jmp rcx
xor r14d, r14d
xor esi, esi
mov dword [rsp + 0x40], r14d
mov qword [rsp + 0x48], rsi
jmp case.0x18002bfa0.244
xor esi, esi
lea r14d, [rsi + 0x7b]
nop dword [rax]
cmp esi, 0x10
ja case.0x18002bfd3.3
mov ecx, dword [rdx + rsi*4 + 0x2c930]
add rcx, rdx
jmp rcx
mov qword [rbp + 0x148], r9
jmp case.0x18002bfd3.3
mov rdx, qword [rbp + 0x40]
mov r9d, 0x28
xor r8d, r8d
xor ecx, ecx
call fcn.18004c650
jmp 0x18002c09d
lea rax, [rsp + 0x50]
mov qword [rbp + 0x40], rax
jmp case.0x18002bfd3.3
mov rax, qword [rbp + 0x40]
cmp dword [rax], 2
jne case.0x18002bfd3.3
mov rax, qword [rax + 0x10]
cmp dword [rax], 6
jne case.0x18002bfd3.3
mov edi, 0x10b
mov eax, edi
sub eax, 0x10b
je 0x18002c05c
sub eax, 0x3a
je 0x18002c040
cmp eax, 0x3a
je case.0x18002bfd3.7
jmp 0x18002c07c
mov r15, qword [rbp - 0x10]
xor ecx, ecx
test r15, r15
je 0x18002c0bf
lea r9d, [rcx + 0x28]
xor r8d, r8d
mov rdx, r15
call fcn.18004c650
jmp 0x18002c07c
mov rax, qword [rbp + 0x40]
lea rdx, [rsp + 0x50]
mov r8d, 0xe8
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 8]
call fcn.180048cf0
mov qword [rbp - 0x10], rax
add edi, 0x3a
cmp edi, 0x1b9
jb 0x18002c027
jmp 0x18002c09d
xor edx, edx
lea rcx, [rbp + 0x150]
mov r8d, 0xcf
call fcn.180014940
lea rdx, [0x180000000]
lea r9, [0x1800db6d0]
inc r14d
inc esi
cmp r14d, 0x82
jb 0x18002bfc0
jmp case.0x18002bfd3.7
mov r8, qword [rbp + 0x40]
lea r9, [rbp - 0x60]
mov dword [rbp - 0x60], 0
xor edx, edx
mov dword [rsp + 0x20], 0xea
mov r8, qword [r8 + 0x10]
call fcn.180047f20
mov r9d, 0x38
lea rdx, [rbp + 0x40]
xor r8d, r8d
xor ecx, ecx
call fcn.180046a50
mov rsi, qword [rsp + 0x48]
mov r14d, dword [rsp + 0x40]
mov r15, qword [rbp + 0x1d0]
mov rdi, qword [rbp + 0x1e8]
lea rdx, [0x180000000]
movabs r8, 0x1fffffffffffffff
lea r9, [0x1800db6d0]
mov r10d, 0x1bb
jmp case.0x18002bfa0.244
xor r8d, r8d
mov edx, 0xac
mov rcx, r9
call fcn.18000dae0
lea r9, [0x1800db6d8]
mov dword [rsp + 0x20], 0x7d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180030050
test al, al
je 0x18002c607
jmp 0x18002c10d
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x58]
cmp rax, rcx
je 0x18002c186
lea rcx, [rbp - 0x40]
mov qword [rax], rcx
add qword [rsp + 0x58], 8
jmp 0x18002c2de
mov r15, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov r14, r15
sub r14, rax
sar r14, 3
cmp r14, r8
je 0x18002c8b3
sub rcx, rax
lea r12, [r14 + 1]
sar rcx, 3
mov rax, r8
mov rdx, rcx
shr rdx, 1
sub rax, rdx
cmp rcx, rax
jbe 0x18002c1c4
mov rax, r12
jmp 0x18002c1cf
lea rax, [rcx + rdx]
cmp rax, r12
cmovb rax, r12
cmp rax, r8
ja 0x18002c8ad
lea rsi, [rax*8]
cmp rsi, 0x1000
jb 0x18002c212
lea rcx, [rsi + 0x27]
cmp rcx, rsi
jbe 0x18002c8ad
call fcn.18008756c
test rax, rax
je 0x18002c8a7
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18002c226
test rsi, rsi
je 0x18002c224
mov rcx, rsi
call fcn.18008756c
mov rdi, rax
jmp 0x18002c226
xor edi, edi
lea rax, [rbp - 0x40]
mov rcx, rdi
mov qword [rdi + r14*8], rax
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
cmp r15, r8
jne 0x18002c245
sub r8, rdx
jmp 0x18002c263
mov r8, r15
sub r8, rdx
call fcn.180088a90
mov r8, qword [rsp + 0x58]
lea rcx, [r14 + 1]
sub r8, r15
lea rcx, [rdi + rcx*8]
mov rdx, r15
call fcn.180088a90
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x18002c2a8
mov rdx, qword [rsp + 0x60]
mov rax, rcx
sub rdx, rcx
and rdx, 0xfffffffffffffff8
cmp rdx, 0x1000
jb 0x18002c2a3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c8a7
call fcn.1800875a8
mov r14d, dword [rsp + 0x40]
lea rax, [rdi + r12*8]
mov r15, qword [rbp + 0x1d0]
mov r12, qword [rbp + 0x1d8]
mov qword [rsp + 0x58], rax
lea rax, [rdi + rsi]
mov rsi, qword [rsp + 0x48]
mov qword [rsp + 0x50], rdi
mov rdi, qword [rbp + 0x1e8]
mov qword [rsp + 0x60], rax
mov eax, dword [0x1800db760]
lea rdx, [rsp + 0x38]
mov r8d, 0xe7
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x50]
call fcn.180017880
jmp 0x18002c10d
movsx eax, byte [rdi]
mov r13, rdi
test al, al
je case.0x18002bfa0.236
mov ecx, eax
call fcn.18008bb78
test eax, eax
jne 0x18002c10d
cmp byte [rdi], 0x2a
je 0x18002c10d
xor ebx, ebx
jmp 0x18002c607
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call fcn.18008cfc4
mov eax, 0x1bb
mov qword [rsp + 0x28], 0
xor r9d, r9d
mov word [rsp + 0x38], ax
lea r8, [rbp + 0x10]
mov dword [rsp + 0x20], 0xd5
lea rdx, [rsp + 0x38]
lea rcx, [0x1800db718]
call fcn.1800570c0
jmp 0x18002c10d
lea rax, [rsp + 0x50]
xor edx, edx
mov qword [rbp], rax
lea r9, [rbp + 0x170]
mov eax, dword [0x1800db760]
lea r8, [0x180019910]
mov dword [rbp + 8], eax
xor ecx, ecx
mov eax, dword [0x1800db764]
mov dword [rbp + 0xc], eax
xor eax, eax
movaps xmm0, xmmword [rbp]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], eax
movdqa xmmword [rbp + 0x170], xmm0
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rbp - 0x48], rax
jmp 0x18002c10d
lea r9, [rbp - 0x40]
mov word [rsp + 0x38], r10w
lea r8, [rsp + 0x38]
mov edx, 0xff
lea rcx, [0x1800db738]
call fcn.18001aa80
lea rdx, [rsp + 0x50]
mov ecx, 0x11a
call fcn.18005ca70
mov rdx, qword [rsp + 0x58]
lea rax, [rbp + 0x10]
mov qword [rsp + 0x38], rax
cmp rdx, qword [rsp + 0x60]
je 0x18002c419
lea rax, [rbp + 0x10]
mov qword [rdx], rax
add qword [rsp + 0x58], 8
jmp 0x18002c10d
lea r8, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call fcn.180001d30
jmp 0x18002c10d
mov rax, qword [rbp + 0x1e0]
mov rcx, qword [rax + rsi*8]
test byte [rcx], bl
jne case.0x18002bfa0.244
mov eax, dword [rdi]
cmp dword [0x1800db094], eax
jge case.0x18002bfa0.243
cmp qword [rcx + 0x10], 0
jne 0x18002c4e4
cmp qword [rcx + 8], 0
jne 0x18002c4e4
mov rax, qword [rcx + 0x40]
test rax, rax
je 0x18002c4e4
movsxd rdx, dword [0x1800db094]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
mov rdx, qword [r15 + rdx*8]
call rax
mov edx, eax
test eax, eax
jne 0x18002c49a
inc dword [0x1800db094]
mov rdi, qword [rbp + 0x1e8]
mov dword [rsp + 0x44], eax
jmp 0x18002c4f4
movsxd r8, dword [0x1800db094]
mov ecx, 0xc3
mov eax, ecx
sub eax, 0xc1
je 0x18002c4cd
sub eax, ebx
je 0x18002c4bf
cmp eax, ebx
jne 0x18002c4d1
inc r14d
inc rsi
jmp 0x18002c4d1
mov rax, qword [r15 + r8*8]
mov qword [rbp - 0x50], rax
mov dword [rsp + 0x44], edx
jmp 0x18002c4d1
mov qword [rbp - 0x58], rdi
dec ecx
cmp ecx, 0xc0
ja 0x18002c4a6
mov rdi, qword [rbp + 0x1e8]
jmp 0x18002c4ea
inc r14d
inc rsi
mov dword [rsp + 0x40], r14d
mov qword [rsp + 0x48], rsi
mov rax, qword [rbp + 0x1e0]
mov rcx, qword [rax + rsi*8]
test byte [rcx], bl
je 0x18002c440
jmp 0x18002c10d
mov qword [rbp - 0x58], 0
jmp case.0x18002bfa0.244
mov eax, dword [rsp + 0x44]
test eax, eax
je case.0x18002bfa0.244
mov r9, qword [rbp - 0x58]
mov r8, r12
mov rcx, qword [rbp - 0x50]
mov edx, 0x89
mov dword [rsp + 0x38], eax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
call fcn.180037600
inc dword [0x1800db094]
jmp 0x18002c10d
mov eax, dword [rdi]
cmp dword [0x1800db094], eax
jge case.0x18002bfa0.244
mov dword [rsp + 0x38], 3
nop dword [rax]
movsxd rax, dword [0x1800db094]
mov r9, r12
mov r8, r12
mov edx, 0x89
mov rcx, qword [r15 + rax*8]
lea rax, [rsp + 0x38]
inc dword [0x1800db094]
mov qword [rsp + 0x20], rax
call fcn.180037600
mov eax, dword [rdi]
cmp dword [0x1800db094], eax
jl 0x18002c570
jmp 0x18002c10d
mov rax, qword [rbp - 0x48]
test rax, rax
je 0x18002c607
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
lea rax, [0x18000c900]
lea r9, [rsp + 0x38]
mov qword [rsp + 0x38], rax
xor r8d, r8d
lea ecx, [rdx + 0x34]
call fcn.1800461b0
jmp 0x18002c10d
xor eax, eax
mov dword [rsp + 0x44], eax
mov qword [rbp - 0x50], rax
mov ecx, dword [rsp + 0x30]
mov eax, dword [rbp + 0x1f0]
inc eax
mov dword [rbp + 0x1f0], eax
cmp eax, ecx
jb 0x18002bf80
mov ebx, dword [rsp + 0x44]
lea rcx, [rbp + 0xc0]
call fcn.180005030
mov rdi, qword [rbp + 0xa8]
test rdi, rdi
je 0x18002c70c
mov rsi, qword [rbp + 0xb0]
cmp rdi, rsi
je 0x18002c648
nop
mov rcx, rdi
call fcn.18002ad30
add rdi, 0x20
cmp rdi, rsi
jne 0x18002c630
mov rdi, qword [rbp + 0xa8]
mov rdx, qword [rbp + 0xb8]
mov rax, rdi
sub rdx, rdi
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x18002c67b
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c8a7
mov rcx, rdi
call fcn.1800875a8
xor r14d, r14d
xorps xmm0, xmm0
mov qword [rbp + 0xa8], r14
movdqa xmmword [rbp + 0xb0], xmm0
jmp 0x18002c70f
mov edi, 0x78
nop
mov eax, edi
sub eax, 0x78
je 0x18002c6b1
cmp eax, ebx
je 0x18002c607
jmp 0x18002c700
movzx eax, byte [r13 + 1]
inc r13
test al, al
je 0x18002c700
nop dword [rax]
movsx ecx, al
call fcn.18008bb78
test eax, eax
jne 0x18002c6f4
movsx ecx, byte [r13]
call fcn.18008bbf4
test eax, eax
jne 0x18002c6f4
movsx edx, byte [r13]
lea rcx, [0x1800bdfc4]
call fcn.180088550
test rax, rax
je case.0x18002bfa0.236
movzx eax, byte [r13 + 1]
inc r13
test al, al
jne 0x18002c6c0
inc edi
cmp edi, 0x7a
jb 0x18002c6a0
jmp case.0x18002bfa0.243
xor r14d, r14d
mov rdx, qword [rbp + 0x90]
test rdx, rdx
je 0x18002c747
mov r8, qword [rbp + 0xa0]
lea rcx, [rbp + 0x90]
sub r8, rdx
sar r8, 4
call fcn.1800486d0
xorps xmm0, xmm0
mov qword [rbp + 0xa0], r14
movdqa xmmword [rbp + 0x90], xmm0
lea rcx, [rbp + 0x48]
call fcn.180004fd0
mov rdi, qword [rsp + 0x68]
test rdi, rdi
je 0x18002c7e4
mov rsi, qword [rsp + 0x70]
cmp rdi, rsi
je 0x18002c77e
mov rcx, rdi
call fcn.180004f70
add rdi, 0x28
cmp rdi, rsi
jne 0x18002c768
mov rdi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
movabs rax, 0x6666666666666667
sub rcx, rdi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, rdi
lea rdx, [rdx + rdx*4]
shl rdx, 3
cmp rdx, 0x1000
jb 0x18002c7ce
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c8a7
mov rcx, rdi
call fcn.1800875a8
xorps xmm0, xmm0
mov qword [rsp + 0x68], r14
movdqa xmmword [rsp + 0x70], xmm0
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x18002c812
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x50]
sub r8, rdx
sar r8, 3
call fcn.180048680
xorps xmm0, xmm0
mov qword [rsp + 0x60], r14
movdqa xmmword [rsp + 0x50], xmm0
mov rdx, qword [rbp - 0x1e]
cmp rdx, 0x10
jb 0x18002c849
mov rcx, qword [rbp - 0x36]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002c844
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c8a7
call fcn.1800875a8
mov rdx, qword [rbp + 0x32]
movdqa xmm0, xmmword [0x1800bed00]
mov byte [rbp - 0x36], 0
movdqu xmmword [rbp - 0x26], xmm0
cmp rdx, 0x10
jb 0x18002c891
mov rcx, qword [rbp + 0x1a]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002c88c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c8a7
call fcn.1800875a8
mov eax, ebx
add rsp, 0x288
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18008b9f4
int3
call fcn.18002abe0
int3
call fcn.18002b160
int3