Function at 0x18003dc50
Capabilities:
Create thread

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
lea rbp, [rax - 0x1f8]
sub rsp, 0x2d8
movdqa xmm0, xmmword [0x1800ab330]
mov rsi, rcx
mov qword [rax + 8], r12
mov rdi, r9
mov qword [rax - 0x28], r13
mov rbx, r8
mov qword [rax - 0x30], r14
mov qword [rax - 0x38], r15
mov r15, rdx
xor eax, eax
movdqu xmmword [rbp + 0x4a], xmm0
mov qword [rbp + 0x30], rax
movdqu xmmword [rbp - 6], xmm0
mov word [rbp + 0x38], ax
lea ecx, [rax + 0x30]
xorps xmm0, xmm0
mov byte [rbp + 0x3a], al
mov qword [rbp - 0x20], rax
mov word [rbp - 0x18], ax
mov byte [rbp - 0x16], al
movdqa xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rax
movdqa xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], rax
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x90], rax
call fcn.180077918
mov ecx, dword [rbp + 0x220]
xor r9d, r9d
mov r14, qword [rsp + 0x58]
xorps xmm0, xmm0
mov r12d, dword [rsp + 0x60]
xorps xmm2, xmm2
mov qword [rax], rax
xorps xmm1, xmm1
mov qword [rax + 8], rax
mov r13d, ecx
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0x88], rax
xor eax, eax
mov qword [rbp + 0x150], rax
mov byte [rbp + 0x158], al
mov word [rbp + 0x1a0], ax
movsd qword [rbp + 0xa0], xmm2
movsd qword [rbp + 0x198], xmm2
mov qword [rbp + 0x98], r9
mov qword [rbp + 0xa8], r9
mov qword [rbp + 0xb0], r9
mov dword [rbp + 0xb8], 1
movdqa xmmword [rbp + 0xc0], xmm0
movdqa xmmword [rbp + 0xd0], xmm1
movdqa xmmword [rbp + 0xe0], xmm0
movdqa xmmword [rbp + 0xf0], xmm1
mov qword [rbp + 0x100], 0xffffffffffffffff
mov dword [rbp + 0x108], r9d
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x168], r9
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x170], 0xf
movups xmmword [rbp + 0x130], xmm0
mov word [rbp + 0x178], r9w
movups xmmword [rbp + 0x140], xmm0
mov dword [rbp + 0x17c], r9d
mov qword [rbp + 0x180], r9
movups xmmword [rbp + 0x188], xmm0
mov byte [rbp + 0x1a2], al
lea eax, [rcx + 0x210]
cmp ecx, eax
movzx eax, byte [rsp + 0x40]
mov rcx, qword [rsp + 0x58]
mov byte [rsp + 0x40], al
mov qword [rsp + 0x50], rcx
jae 0x18003e569
mov edx, r13d
cmp r13d, 0xed
ja 0x18003e09d
je 0x18003e040
mov eax, r13d
sub eax, 0x1c
je 0x18003e02a
sub eax, 0x30
je 0x18003e004
sub eax, 0x30
je 0x18003df5e
sub eax, 0x30
je 0x18003de9c
cmp eax, 0x25
jne 0x18003e489
mov eax, 0x66666667
imul dword [rdi]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
je 0x18003e483
mov rax, qword [r15]
lea r9, [rsp + 0x70]
mov dword [rsp + 0x70], edx
xor r8d, r8d
lea rdx, [rbp + 0x10]
mov qword [rbp + 0x10], rax
mov rcx, rsi
mov dword [rsp + 0x20], 0xd1
call fcn.18003dc50
sub rsi, rax
add qword [r15], rsi
mov rsi, rax
jmp 0x18003e47b
mov rdx, qword [rbp - 0x68]
lea rax, [rbp + 0x30]
mov qword [rsp + 0x48], rax
cmp rdx, qword [rbp - 0x60]
je 0x18003dec4
lea rax, [rbp + 0x30]
mov qword [rdx], rax
mov rdx, qword [rbp - 0x68]
add rdx, 8
mov qword [rbp - 0x68], rdx
jmp 0x18003ded6
lea r8, [rsp + 0x48]
lea rcx, [rbp - 0x70]
call fcn.180001b10
mov rdx, qword [rbp - 0x68]
mov eax, dword [0x1800a6858]
movups xmm0, xmmword [str.MyFileMappingObject]
mov dword [rbp + 0x70], eax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x48], rax
movups xmmword [rbp + 0x60], xmm0
cmp rdx, qword [rbp - 0x60]
je 0x18003df07
lea rax, [rbp - 0x20]
mov qword [rdx], rax
add qword [rbp - 0x68], 8
jmp 0x18003df15
lea r8, [rsp + 0x48]
lea rcx, [rbp - 0x70]
call fcn.180001b10
mov eax, dword [0x1800c5a10]
lea rdx, [rsp + 0x48]
mov r8d, 0xac
mov dword [rsp + 0x48], eax
lea rcx, [rbp - 0x70]
call fcn.18000f5d0
lea rax, [rbp - 0x70]
mov qword [rbp + 0x20], rax
mov eax, dword [0x1800c5a10]
mov dword [rbp + 0x28], eax
mov eax, dword [0x1800c5a14]
mov dword [rbp + 0x2c], eax
movaps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x1b0], xmm0
jmp 0x18003e47b
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call fcn.18007ced8
lea rax, [rsp + 0x48]
mov byte [rsp + 0x40], 1
mov ebx, 0x1bb
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x30]
mov word [rsp + 0x48], bx
xor r8d, r8d
lea rcx, [0x1800c59c8]
mov edx, 0xa5
call fcn.180009600
mov word [rsp + 0x48], bx
lea rax, [rbp - 0x20]
xor ebx, ebx
lea rdx, [0x1800c59e8]
mov qword [rsp + 0x38], rbx
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov qword [rsp + 0x28], rbx
xor r8d, r8d
mov dword [rsp + 0x20], 0x22
call fcn.180017310
mov qword [rsp + 0x38], rbx
lea rax, [rbp - 0x70]
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov qword [rsp + 0x28], rbx
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 0x46
xor ecx, ecx
call fcn.180017310
jmp 0x18003e47b
lea rdx, [0x1800c5988]
mov ecx, 0x10e
call fcn.18000db00
test al, al
jne 0x18003e47b
mov dword [rsp + 0x68], 1
jmp 0x18003e910
lea rdx, [0x1800c5980]
mov ecx, 0x42
call fcn.180046000
jmp 0x18003e47b
mov rdi, qword [r15]
mov rax, qword [rdi + 0x20]
mov rbx, qword [rax]
mov rax, qword [rsi]
mov r15d, dword [rax + 0x30]
test r15d, r15d
je 0x18003e082
mov rcx, rdi
call qword [rdi + 0x50]
movzx eax, byte [rdi + 0x5a]
mov byte [rbx], al
lea rbx, [rbx + 3]
movzx eax, byte [rdi + 0x59]
mov byte [rbx - 2], al
movzx eax, byte [rdi + 0x58]
mov byte [rbx - 1], al
add r15d, 0xffffffff
jne 0x18003e056
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
mov rdi, qword [rbp + 0x218]
mov r15, qword [rbp + 0x208]
mov dword [rsp + 0x68], 1
jmp 0x18003e483
mov eax, r13d
sub eax, 0x10d
je 0x18003e3d7
sub eax, 0x10
je 0x18003e910
sub eax, 5
je 0x18003e35f
sub eax, 0x30
je 0x18003e300
cmp eax, 0x30
jne 0x18003e489
mov rax, qword [rsi]
cmp dword [rax + 0x6c], 0
je 0x18003e0de
cmp dword [rax + 0x58], 0
jne 0x18003e0f9
mov dword [rax + 0x7c], r9d
mov rax, qword [rsi]
mov dword [rax + 0x80], r9d
mov rax, qword [rsi]
mov dword [rax + 0x84], r9d
mov rax, qword [rsi]
cmp dword [rax + 0x6c], 0
je 0x18003e20a
cmp dword [rax + 0x5c], 0
je 0x18003e121
mov rax, qword [rax]
mov dword [rax + 0x28], 0x2f
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax]
mov rax, qword [rsi]
xor r9d, r9d
cmp dword [rax + 0x90], 3
je 0x18003e151
mov dword [rax + 0x7c], 1
mov rax, qword [rsi]
mov dword [rax + 0x80], r9d
mov rax, qword [rsi]
mov dword [rax + 0x84], r9d
mov rax, qword [rsi]
mov qword [rax + 0xa0], r9
jmp 0x18003e180
cmp qword [rax + 0xa0], 0
je 0x18003e167
mov dword [rax + 0x80], 1
jmp 0x18003e180
cmp dword [rax + 0x74], 0
je 0x18003e179
mov dword [rax + 0x84], 1
jmp 0x18003e180
mov dword [rax + 0x7c], 1
mov rax, qword [rsi]
cmp dword [rax + 0x7c], 0
je 0x18003e1b8
xor edx, edx
mov qword [rsp + 0x48], rax
lea r9, [rsp + 0x48]
xor r8d, r8d
lea ecx, [rdx + 0x7f]
call fcn.180047c50
mov rax, qword [rsi]
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rax + 0x2a8]
mov qword [rbx + 0x20], rcx
mov rax, qword [rsi]
jmp 0x18003e1bd
mov rbx, qword [rsp + 0x50]
cmp dword [rax + 0x84], 0
jne 0x18003e1cf
cmp dword [rax + 0x80], 0
je 0x18003e202
xor r9d, r9d
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x48]
mov qword [rsp + 0x20], 0
xor edx, edx
mov ecx, 0xb6
call fcn.180059440
mov rax, qword [rsi]
mov rcx, qword [rax + 0x2a8]
mov qword [rbx + 0x28], rcx
mov rax, qword [rsi]
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
cmp dword [rax + 0x5c], 0
jne 0x18003e289
xor edx, edx
mov qword [rsp + 0x48], rax
cmp dword [rcx + 0x1c], edx
je 0x18003e230
lea r9, [rsp + 0x48]
xor r8d, r8d
mov ecx, 0xd1
call fcn.18005fd40
jmp 0x18003e25e
mov qword [rsp + 0x20], r9
lea r8, [rsp + 0x48]
mov r9d, 0x86
xor ecx, ecx
call fcn.1800430e0
mov rax, qword [rsi]
lea rdx, [rsp + 0x48]
mov ecx, 0xf2
mov qword [rsp + 0x48], rax
call fcn.18005c0e0
mov rcx, qword [rsi]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x78]
mov edx, 0x1e
mov eax, dword [rcx + 0x84]
mov qword [rsp + 0x58], rcx
xor ecx, ecx
mov dword [rsp + 0x78], eax
call fcn.180049aa0
mov rax, qword [rsi]
xor r9d, r9d
mov qword [rsp + 0x48], rax
xor r8d, r8d
mov dword [rsp + 0x20], 0x52
xor edx, edx
lea rcx, [rsp + 0x48]
call fcn.180049f10
mov rax, qword [rsi]
cmp dword [rax + 0x13c], 0
je 0x18003e2cb
mov rax, qword [rax]
mov dword [rax + 0x28], 1
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax]
jmp 0x18003e47b
xor edx, edx
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x48]
cmp dword [rax + 0x138], edx
je 0x18003e2ee
mov ecx, 0xad
call fcn.180015940
jmp 0x18003e47b
mov r9d, 0x1a
xor ecx, ecx
call fcn.180017990
jmp 0x18003e47b
mov eax, dword [rsp + 0x60]
cmp eax, dword [rbp - 0x80]
je 0x18003e326
mov rax, qword [rsi]
mov rcx, qword [rax]
mov dword [rcx + 0x28], 0x46
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
mov dword [rcx + 0x18], r9d
xor r8d, r8d
mov rax, qword [rsi]
lea rcx, [rsp + 0x48]
xor r9d, r9d
mov qword [rsp + 0x48], rax
mov edx, 0x120
call fcn.180051fb0
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
mov dword [rcx + 0x1c], eax
mov qword [rcx + 0x20], r9
mov qword [rcx + 0x28], r9
jmp 0x18003e483
mov rax, qword [rsi]
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x20], r9
xor r8d, r8d
mov r9d, 0xe8
mov qword [rsp + 0x60], rax
xor ecx, ecx
mov rbx, qword [rax + 0x258]
mov qword [rsp + 0x50], rbx
call fcn.1800444e0
mov rax, qword [rsi]
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], 0
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x60], rax
xor edx, edx
mov dword [rsp + 0x20], 0x66
call fcn.18005d040
mov rax, qword [rsi]
mov ecx, dword [rax + 0x90]
imul ecx, dword [rax + 0x88]
mov dword [rbp - 0x80], ecx
mov dword [rsp + 0x60], ecx
mov rcx, rbx
jmp 0x18003e480
mov rcx, qword [rsi]
mov r12d, r9d
mov rax, qword [r15]
mov rdi, qword [rcx + 0xa0]
mov r14, qword [rax + 0x18]
test rdi, rdi
je 0x18003e510
cmp dword [rcx + 0x90], 3
mov rbx, r9
movsxd rax, dword [rcx + 0x9c]
mov r15, rax
jne 0x18003e4a8
test eax, eax
jle 0x18003e551
mov r12d, eax
nop dword [rax]
mov rax, qword [rdi + 0x10]
mov rdx, r14
movsx ecx, byte [rbx + rax]
call fcn.180083554
mov rax, qword [rdi + 8]
mov rdx, r14
movsx ecx, byte [rbx + rax]
call fcn.180083554
mov rax, qword [rdi]
mov rdx, r14
movsx ecx, byte [rbx + rax]
call fcn.180083554
mov rax, qword [rbp + 0x210]
cmp dword [rax], 4
jne 0x18003e465
mov rdx, r14
xor ecx, ecx
call fcn.180083554
inc rbx
cmp rbx, r15
jl 0x18003e420
mov r15, qword [rbp + 0x208]
mov rdi, qword [rbp + 0x218]
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
mov edx, dword [rbp + 0x220]
add r13d, 0x30
lea eax, [rdx + 0x210]
cmp r13d, eax
jae 0x18003e569
mov rbx, qword [rbp + 0x210]
jmp 0x18003de11
test eax, eax
jle 0x18003e551
mov r12d, eax
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdi]
mov rdx, r14
movsx ecx, byte [rbx + rax]
call fcn.180083554
mov rax, qword [rdi]
mov rdx, r14
movsx ecx, byte [rbx + rax]
call fcn.180083554
mov rax, qword [rdi]
mov rdx, r14
movsx ecx, byte [rbx + rax]
call fcn.180083554
mov rax, qword [rbp + 0x210]
cmp dword [rax], 4
jne 0x18003e503
mov rdx, r14
xor ecx, ecx
call fcn.180083554
inc rbx
cmp rbx, r15
jl 0x18003e4c0
jmp 0x18003e46d
mov rdx, r14
mov ecx, r12d
call fcn.180083554
mov rdx, r14
mov ecx, r12d
call fcn.180083554
mov rdx, r14
mov ecx, r12d
call fcn.180083554
cmp dword [rbx], 4
jne 0x18003e540
mov rdx, r14
xor ecx, ecx
call fcn.180083554
inc r12d
cmp r12d, 0x100
jl 0x18003e510
jmp 0x18003e474
mov rcx, qword [rsp + 0x50]
mov rdi, qword [rbp + 0x218]
mov r15, qword [rbp + 0x208]
jmp 0x18003e489
mov r13d, dword [rbp + 0x220]
lea r15d, [r13 - 0xa]
cmp r13d, r15d
jbe 0x18003e910
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x58]
nop word [rax + rax]
cmp r13d, 0xd1
ja 0x18003e714
je 0x18003e6c3
mov eax, r13d
sub eax, 0x19
je 0x18003e90b
sub eax, 1
je 0x18003e66d
sub eax, 1
je 0x18003e623
sub eax, 1
je 0x18003e5d2
cmp eax, 0xb4
je 0x18003e910
jmp 0x18003e8f9
mov qword [rsp + 0x28], r9
lea r8, [0x180015930]
mov dword [rsp + 0x20], r9d
xor edx, edx
lea r9, [rbp + 0x1b0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
xor r9d, r9d
xor edx, edx
mov rdi, rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x100
lea rcx, [rdx - 1]
lea r8d, [r9 + 4]
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov rbx, rax
jmp 0x18003e8f6
test rdi, rdi
je 0x18003e01d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rax, [0x18000b2b0]
xor r8d, r8d
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x58], rax
mov ecx, 0xb7
call fcn.18006c750
movzx eax, byte [rsp + 0x40]
xor r9d, r9d
test rbx, rbx
mov ecx, r9d
cmovne ecx, eax
mov byte [rsp + 0x40], cl
jmp 0x18003e8f9
lea r9, [0x1800c5980]
mov r8d, 0x89
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x80]
call fcn.18004c010
mov r9d, 0x5f
lea rdx, [rbp + 0x80]
xor r8d, r8d
xor ecx, ecx
call fcn.18000f810
cmp byte [rsp + 0x40], 0
je 0x18003e8f6
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x18003e8f6
mov rax, qword [rbp + 0x218]
lea r8, [0x1800a685c]
mov ecx, dword [rax]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ecx, eax
mov rax, qword [rbp + 0x208]
add cl, 0x30
movsx r9d, cl
mov rcx, rsi
mov rdx, qword [rax]
call fcn.180074ae0
movsxd rcx, eax
add rsi, rcx
mov qword [rsp + 0x68], rsi
jmp 0x18003e8f6
mov eax, r13d
sub eax, 0x10c
je 0x18003e8a7
sub eax, 1
je 0x18003e87a
sub eax, 0x14
je 0x18003e7be
cmp eax, 1
jne 0x18003e8f9
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x278]
cmp dword [rax + 0x20], 0
jne 0x18003e756
cmp dword [rcx + 0x58], 0
mov eax, r9d
je 0x18003e75b
mov eax, 1
mov qword [rsp + 0x58], rcx
lea r8, [rsp + 0x58]
lea rcx, [rsp + 0x60]
mov dword [rsp + 0x60], eax
mov edx, 0x3a
call fcn.1800491d0
mov rcx, qword [rsi]
cmp dword [rcx + 0x5c], 0
jne 0x18003e7a5
mov qword [rsp + 0x58], rcx
lea r8, [rsp + 0x60]
mov ecx, 0xd5
mov dword [rsp + 0x60], 0
lea rdx, [rsp + 0x58]
call fcn.18004b1a0
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
call qword [rax + 0x30]
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x278]
call qword [rax + 0x10]
jmp 0x18003e8f6
mov rax, qword [rsi]
cmp qword [rax + 0x10], 0
je 0x18003e8f9
cmp dword [rax + 0x58], 0
jne 0x18003e8f9
mov rax, qword [rax + 0x278]
cmp dword [rax + 0x20], 0
je 0x18003e8f9
mov edx, 0xb3
nop dword [rax]
cmp edx, 0xb3
je 0x18003e805
cmp edx, 0x2f8c
jne 0x18003e863
inc dword [rcx + 0x18]
jmp 0x18003e863
mov rax, qword [rsi]
cmp dword [rax + 0x138], 0
mov r8d, dword [rax + 0x38]
je 0x18003e81d
lea r8d, [r8 + r8*2]
add r8d, 2
mov rax, qword [rax + 0x10]
mov dword [rax + 8], r9d
mov rax, qword [rsi]
mov ecx, dword [rax + 0x1dc]
mov rax, qword [rax + 0x10]
imul ecx, r8d
mov dword [rax + 0xc], ecx
mov rax, qword [rsi]
mov rcx, qword [rax + 0x10]
mov dword [rcx + 0x10], r9d
mov ecx, r9d
mov rax, qword [rsi]
cmp dword [rax + 0x84], 0
mov rax, qword [rax + 0x10]
setne cl
add ecx, 2
mov dword [rax + 0x14], ecx
mov rcx, qword [rsp + 0x50]
add edx, 0x2ed9
cmp edx, 0x5db2
jbe 0x18003e7f0
jmp 0x18003e8f9
mov rax, qword [rbp + 0x218]
cmp r12d, dword [rax]
jle 0x18003e8f9
mov rax, qword [rsi]
mov rcx, qword [rax]
mov dword [rcx + 0x28], 0x40f
mov rax, qword [rsi]
mov rcx, qword [rax]
mov dword [rcx + 0x2c], r12d
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax]
jmp 0x18003e8f6
mov rax, qword [rbp + 0x218]
cmp r12d, dword [rax]
jge 0x18003e8f9
mov rdx, r14
xor ecx, ecx
call fcn.180083554
mov rdx, r14
xor ecx, ecx
call fcn.180083554
mov rdx, r14
xor ecx, ecx
call fcn.180083554
mov rax, qword [rbp + 0x210]
cmp dword [rax], 4
jne 0x18003e8e7
mov rdx, r14
xor ecx, ecx
call fcn.180083554
mov rax, qword [rbp + 0x218]
inc r12d
cmp r12d, dword [rax]
jl 0x18003e8b3
xor r9d, r9d
dec r13d
cmp r13d, r15d
jbe 0x18003e910
mov rcx, qword [rsp + 0x50]
jmp 0x18003e590
mov dword [rsp + 0x68], r9d
lea rcx, [rbp + 0x100]
call fcn.180005250
mov rbx, qword [rbp + 0xe8]
mov r15, qword [rsp + 0x2c0]
mov r14, qword [rsp + 0x2c8]
mov r13, qword [rsp + 0x2d0]
mov r12, qword [rsp + 0x300]
test rbx, rbx
je 0x18003e9bd
mov rdi, qword [rbp + 0xf0]
cmp rbx, rdi
je 0x18003e96c
mov rcx, rbx
call fcn.180021000
add rbx, 0x20
cmp rbx, rdi
jne 0x18003e954
mov rbx, qword [rbp + 0xe8]
mov rdx, qword [rbp + 0xf8]
mov rax, rbx
sub rdx, rbx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x18003e99f
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003eb89
mov rcx, rbx
call fcn.180077954
xor esi, esi
xorps xmm0, xmm0
mov qword [rbp + 0xe8], rsi
movdqa xmmword [rbp + 0xf0], xmm0
jmp 0x18003e9bf
xor esi, esi
mov rcx, qword [rbp + 0xd0]
test rcx, rcx
je 0x18003ea15
mov rdx, qword [rbp + 0xe0]
mov rax, rcx
sub rdx, rcx
and rdx, 0xfffffffffffffff0
cmp rdx, 0x1000
jb 0x18003e9fe
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003eb89
call fcn.180077954
xorps xmm0, xmm0
mov qword [rbp + 0xe0], rsi
movdqa xmmword [rbp + 0xd0], xmm0
lea rcx, [rbp + 0x88]
call fcn.1800051f0
mov rbx, qword [rbp - 0x58]
test rbx, rbx
je 0x18003eaaf
mov rdi, qword [rbp - 0x50]
cmp rbx, rdi
je 0x18003ea4c
mov rcx, rbx
call fcn.180005190
add rbx, 0x28
cmp rbx, rdi
jne 0x18003ea37
mov rbx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x48]
movabs rax, 0x6666666666666667
sub rcx, rbx
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, rbx
lea rdx, [rdx + rdx*4]
shl rdx, 3
cmp rdx, 0x1000
jb 0x18003ea9b
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003eb89
mov rcx, rbx
call fcn.180077954
xorps xmm0, xmm0
mov qword [rbp - 0x58], rsi
movdqa xmmword [rbp - 0x50], xmm0
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x18003eaf9
mov rdx, qword [rbp - 0x60]
mov rax, rcx
sub rdx, rcx
and rdx, 0xfffffffffffffff8
cmp rdx, 0x1000
jb 0x18003eae8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003eb89
call fcn.180077954
xorps xmm0, xmm0
mov qword [rbp - 0x60], rsi
movdqa xmmword [rbp - 0x70], xmm0
mov rdx, qword [rbp + 2]
cmp rdx, 0x10
jb 0x18003eb30
mov rcx, qword [rbp - 0x16]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003eb2b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003eb89
call fcn.180077954
mov rdx, qword [rbp + 0x52]
movdqa xmm0, xmmword [0x1800ab330]
mov byte [rbp - 0x16], 0
movdqu xmmword [rbp - 6], xmm0
cmp rdx, 0x10
jb 0x18003eb78
mov rcx, qword [rbp + 0x3a]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003eb73
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003eb89
call fcn.180077954
mov rax, qword [rsp + 0x68]
add rsp, 0x2d8
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18007ba54
int3