Function at 0x18002e310
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3d8]
sub rsp, 0x518
mov r10d, dword [rbp + 0x3f8]
lea r12, [0x180000000]
mov r11d, dword [rbp + 0x3f8]
mov edi, r9d
mov r15, qword [rbp + 0x400]
mov esi, r9d
imul r14d, r9d, 0x134
mov r13, r8
mov r8d, dword [rbp + 0x3f8]
mov rbx, rcx
movaps xmmword [rax - 0x58], xmm6
mov dword [rbp - 0x78], r10d
mov dword [rbp - 0x74], r11d
cmp r9d, r14d
mov dword [rbp + 0x90], r8d
mov r9, qword [rbp + 0x3e0]
mov qword [rbp - 0x50], r9
ja 0x18002e980
mov rax, qword [rbp + 0x3e0]
mov ecx, dword [rbp + 0x3f8]
mov qword [rbp + 0xe8], rax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x84], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x80], eax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x70], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x100], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x108], rax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x20], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x88], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp - 0x48], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp - 0x20], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x8c], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x7c], eax
mov dword [rbp - 0x6c], ecx
cmp esi, 0x2568
ja 0x18002e5ec
je 0x18002e5c9
mov eax, esi
sub eax, 0x29
je 0x18002e950
sub eax, 0x7f
je 0x18002e5aa
sub eax, 0x40
je 0x18002e4e1
sub eax, 0x1220
je 0x18002e4c2
cmp eax, 0x740
jne 0x18002e928
mov rax, qword [rbp + 0x3e0]
movaps xmm6, xmmword [rsp + 0x500]
add rsp, 0x518
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
movzx ecx, byte [r13 + 4]
movzx r10d, word [r13]
movzx r11d, word [r13 + 2]
mov dword [rbp - 0x6c], ecx
mov dword [rbp - 0x78], r10d
mov dword [rbp - 0x74], r11d
jmp 0x18002e928
movups xmm1, xmmword [r15]
mov r12, qword [rbp + 0x408]
lea r8, [rbp + 0xa0]
mov r9d, 0x119
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x210]
movaps xmmword [rbp + 0xa0], xmm1
movups xmm0, xmmword [r12]
movaps xmmword [rbp + 0x10], xmm0
call fcn.1800b06b0
movups xmm0, xmmword [r12 + 0x10]
mov r9d, 0x119
lea r8, [rbp + 0xa0]
movups xmm1, xmmword [r15 + 0x10]
lea rdx, [rbp + 0x10]
movaps xmm6, xmmword [rbp + 0x210]
lea rcx, [rbp + 0x230]
movaps xmmword [rbp + 0x10], xmm0
movaps xmmword [rbp + 0xa0], xmm1
call fcn.1800b06b0
movaps xmm0, xmmword [rbp + 0x230]
lea r9, [rbp + 0xa0]
mov r8d, 0xfd
movdqa xmmword [rbp + 0xa0], xmm0
lea rdx, [rbp + 0x10]
movdqa xmmword [rbp + 0x10], xmm6
lea rcx, [rbp + 0x240]
call fcn.1800b5000
movups xmm0, xmmword [rbp + 0x240]
mov r9, qword [rbp - 0x50]
movups xmm1, xmmword [rbp + 0x250]
mov r10d, dword [rbp - 0x78]
mov r11d, dword [rbp - 0x74]
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm1
jmp 0x18002e925
mov ebx, dword [r15 + 0x24d8]
mov ecx, dword [r15 + 0x24dc]
mov dword [rbp + 0x84], ebx
mov dword [rbp + 0x80], ecx
jmp 0x18002e925
mov ecx, dword [r13 + 0x194c]
mov r8d, r10d
sar r8d, cl
mov dword [rbp + 0x78], r8d
mov r8d, r11d
sar r8d, cl
mov dword [rbp + 0x88], r8d
jmp 0x18002e925
cmp esi, 0x37c8
je 0x18002e8f2
cmp esi, 0x4a28
je 0x18002e7a9
cmp esi, 0x5c88
je 0x18002e708
cmp esi, 0x6ee8
je 0x18002e65e
cmp esi, 0x8148
jne 0x18002e928
lea r8, [rbp - 0x10]
mov qword [rbp - 0x10], 0x20
lea rdx, [rbp - 8]
mov qword [rbp - 8], 0x4000
mov ecx, 0xd7
call fcn.180083b70
mov r9, qword [rbp - 0x50]
mov r10d, dword [rbp - 0x78]
mov r11d, dword [rbp - 0x74]
mov qword [rbp + 0xe8], rax
jmp 0x18002e925
lea r8, [rbp - 0x10]
mov qword [rbp - 0x10], 0x20
lea rdx, [rbp - 8]
mov qword [rbp - 8], 0x4000
mov ecx, 0xd7
call fcn.180083b70
mov ecx, dword [r13 + 0x194c]
lea r8, [rbp - 0x10]
add ecx, ecx
mov qword [rbp + 0x100], rax
mov edx, 0x4000
mov qword [rbp - 0x10], 0x20
sar edx, cl
movsxd rcx, edx
lea rdx, [rbp - 8]
mov qword [rbp - 8], rcx
mov ecx, 0xd7
call fcn.180083b70
mov ecx, dword [r13 + 0x194c]
lea r8, [rbp - 0x10]
add ecx, ecx
mov qword [rbp + 0xd8], rax
mov edx, 0x4000
mov qword [rbp - 0x10], 0x20
sar edx, cl
movsxd rcx, edx
lea rdx, [rbp - 8]
mov qword [rbp - 8], rcx
mov ecx, 0xd7
call fcn.180083b70
mov r9, qword [rbp - 0x50]
mov r10d, dword [rbp - 0x78]
mov r11d, dword [rbp - 0x74]
mov qword [rbp + 0x108], rax
jmp 0x18002e925
lea r8, [rbp - 0x10]
mov qword [rbp - 0x10], 0x20
lea rdx, [rbp - 8]
mov qword [rbp - 8], 0x4000
mov ecx, 0xd7
call fcn.180083b70
mov ecx, dword [r13 + 0x194c]
lea r8, [rbp - 0x10]
add ecx, ecx
mov qword [rbp + 0x70], rax
mov edx, 0x4000
mov qword [rbp - 0x10], 0x20
sar edx, cl
movsxd rcx, edx
lea rdx, [rbp - 8]
mov qword [rbp - 8], rcx
mov ecx, 0xd7
call fcn.180083b70
mov ecx, dword [r13 + 0x194c]
lea r8, [rbp - 0x10]
add ecx, ecx
mov qword [rbp + 0x58], rax
mov edx, 0x4000
mov qword [rbp - 0x10], 0x20
sar edx, cl
movsxd rcx, edx
lea rdx, [rbp - 8]
mov qword [rbp - 8], rcx
mov ecx, 0xd7
call fcn.180083b70
mov r9, qword [rbp - 0x50]
mov r10d, dword [rbp - 0x78]
mov r11d, dword [rbp - 0x74]
mov qword [rbp + 0x30], rax
jmp 0x18002e925
cmp dword [r13 + 0x194c], 0
movsxd r8, dword [r13 + 0x1948]
mov dword [rbp + 0x90], r8d
je 0x18002e7cf
mov r12d, dword [r12 + r8*4 + 0x1125d0]
mov dword [rbp + 0x20], r12d
jmp 0x18002e7d3
mov dword [rbp + 0x20], r8d
test byte [r13 + 0x1930], 1
je 0x18002e8e5
mov rax, qword [r15 + 0x2358]
cmp dword [rax + 0x64], 0
jne 0x18002e8e5
mov edi, 0x11f
cmp edi, 0x11f
je 0x18002e84e
cmp edi, 0x93fc
jne 0x18002e8c5
mov rcx, qword [rbp + 0x3e8]
mov r9, r13
mov rdx, qword [rbp + 0x408]
mov r8d, 0xc5
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x240]
call fcn.180087690
mov rcx, qword [rbp + 0x3e0]
movups xmm1, xmmword [rax]
mov rax, rcx
movd dword [rcx], xmm1
jmp 0x18002e4a6
mov rdx, qword [r13 + 0x1938]
mov ebx, ecx
imul ebx, ecx
mov rcx, qword [r13 + 8]
movsxd r8, ebx
call fcn.1800c9d60
mov eax, dword [r13 + 0x194c]
mov edx, ebx
lea ecx, [rax + rax]
sar edx, cl
mov rcx, qword [r13 + 8]
movsxd r8, edx
add rcx, 0x4000
mov rdx, qword [r13 + 0x1938]
add rdx, 0x4000
call fcn.1800c9d60
mov eax, dword [r13 + 0x194c]
mov rdx, qword [r13 + 0x1938]
add rdx, 0x8000
lea ecx, [rax + rax]
sar ebx, cl
mov rcx, qword [r13 + 8]
add rcx, 0x8000
movsxd r8, ebx
call fcn.1800c9d60
mov ecx, dword [rbp - 0x6c]
add edi, 0x92dd
cmp edi, 0x125ba
jbe 0x18002e7f7
mov r10d, dword [rbp - 0x78]
mov r11d, dword [rbp - 0x74]
mov edi, dword [rbp + 0x3f8]
mov r9, qword [r15 + 0x2368]
mov qword [rbp - 0x50], r9
jmp 0x18002e928
mov r8d, dword [rdx]
mov eax, ecx
mov dword [rbp + 0x24], ecx
mov ecx, dword [r13 + 0x194c]
sar eax, cl
mov dword [rbp - 0x48], eax
mov rax, qword [r15 + 0x2358]
mov dword [rbp - 0x20], r8d
mov r8d, dword [r15 + 8]
mov dword [rbp + 0x8c], r8d
mov ecx, dword [rax + 0xdc]
mov dword [rbp + 0x7c], ecx
mov ecx, dword [rbp - 0x6c]
mov rdx, qword [rbp + 0x3e8]
imul eax, edi, 0x1c
add esi, eax
cmp esi, r14d
ja 0x18002ea4a
mov rbx, qword [rbp + 0x3e0]
lea r12, [0x180000000]
jmp 0x18002e462
movzx eax, word [r15]
lea r9, [rbp + 0x3f8]
xor edx, edx
mov word [rbp + 0x3f8], ax
xor ecx, ecx
mov r8d, 0x8f
call fcn.18006fc00
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov rax, rbx
jmp 0x18002e4a6
mov eax, dword [rbp + 0x3f8]
mov r14, qword [rbp + 0x3e0]
mov dword [rbp - 0x6c], eax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0xe8], rax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x84], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x80], eax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x70], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x100], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x108], rax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x20], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x88], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp - 0x48], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp - 0x20], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x8c], eax
mov eax, dword [rbp + 0x3f8]
mov dword [rbp + 0x7c], eax
mov qword [rbp + 0x30], r14
jmp 0x18002ea4e
mov r14, qword [rbp + 0x30]
lea eax, [rdi + 0xb]
mov dword [rbp - 0x70], eax
cmp edi, eax
jae 0x18002e49f
mov eax, dword [rbp + 0x210]
mov ebx, dword [rbp + 0x3f8]
mov r8d, dword [rbp + 0x14]
mov edi, dword [rbp + 0x3f8]
mov r13d, dword [rbp + 0x38]
mov r12d, dword [rbp + 0x3c]
mov rsi, qword [rbp + 0x3f0]
mov ecx, dword [rbp - 0x70]
mov dword [rbp - 0x30], eax
mov eax, dword [rbp + 0x3f8]
mov qword [rbp + 0x138], rbx
mov dword [rbp - 0x80], r8d
nop dword [rax + rax]
add eax, 0xffffff58
cmp eax, 0xa
ja case.default.0x18002eac6
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x2fee0]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov r8, qword [rbp + 0xd8]
lea rcx, [rbp + 0x260]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0x108]
lea rcx, [rbp + 0x270]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0xe8]
lea rcx, [rbp + 0x280]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0x110]
lea rcx, [rbp + 0x290]
jmp 0x18002fe88
mov rax, qword [rsi + 8]
add rax, 0x8000
mov qword [rbp + 0x1d0], rax
jmp 0x18002fea5
mov r8, qword [rbp + 0xc8]
lea rcx, [rbp + 0x2a0]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0x70]
lea rcx, [rbp + 0x2b0]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0x58]
lea rcx, [rbp + 0x2c0]
jmp 0x18002fe88
lea r8, [rbp + 0x118]
mov qword [rbp + 0x118], 0x20
lea rdx, [rbp + 0xc0]
mov qword [rbp + 0xc0], 0x8000
mov ecx, 0xd7
call fcn.180083b70
mov qword [rbp + 0xc0], rax
mov rax, qword [rsi + 0x10]
mov qword [rbp + 0x118], rax
jmp 0x18002fe95
mov eax, dword [rdx + 0x48]
xor r14d, r14d
test eax, eax
mov ecx, r14d
cmovns ecx, eax
cmp eax, 0xffffffff
mov eax, dword [rbp - 0x20]
sete r14b
mov dword [rbp + 0x28], ecx
mov dword [rbp + 0x130], r14d
mov dword [rdx + 0x4c], ecx
mov dword [rdx], eax
jmp 0x18002fea5
mov rsi, qword [rbp + 0x3f0]
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0xc8]
mov qword [rbp + 0x110], 0x20
mov eax, dword [rsi + 0x194c]
lea ecx, [rax + rax]
mov eax, 0x4000
sar eax, cl
mov ecx, 0xd7
cdqe
mov qword [rbp + 0xc8], rax
call fcn.180083b70
mov ecx, dword [rsi + 0x194c]
lea r8, [rbp + 0xc8]
add ecx, ecx
mov qword [rbp + 0x110], rax
mov edx, 0x4000
mov qword [rbp + 0xc8], 0x20
sar edx, cl
movsxd rcx, edx
lea rdx, [rbp + 0x68]
mov qword [rbp + 0x68], rcx
mov ecx, 0xd7
call fcn.180083b70
lea r8, [rbp + 0x68]
mov qword [rbp + 0xc8], rax
lea rdx, [rbp + 0xb0]
mov qword [rbp + 0x68], 0x20
mov ecx, 0xd7
mov qword [rbp + 0xb0], 0x8000
call fcn.180083b70
lea r8, [rbp + 0x68]
mov qword [rbp + 0xb0], rax
lea rdx, [rbp - 0x18]
mov qword [rbp + 0x68], 0x20
mov ecx, 0xd7
mov qword [rbp - 0x18], 0x8000
call fcn.180083b70
mov qword [rbp + 0x68], rax
jmp 0x18002fe95
mov edi, dword [rbp - 0x20]
cmp edi, 1
jne 0x18002f3f7
mov r13d, dword [rbp + 0xd0]
lea r14d, [rdi + 0x56]
jmp 0x18002ecf7
mov rdx, qword [rbp + 0x3e8]
cmp r14d, 0xb3c7
ja 0x18002f34a
je 0x18002efe5
cmp r14d, 0x57
je 0x18002efc8
cmp r14d, 0x3c27
je 0x18002ef48
cmp r14d, 0x77f7
jne 0x18002f3cb
mov rax, qword [r15 + 0x2358]
mov r10d, 1
mov esi, dword [rbp - 0x74]
mov r11d, 0x9a
mov edi, dword [rbp - 0x78]
mov dword [rbp + 0x1b8], esi
mov ecx, dword [rax + 8]
shl r10d, cl
mov dword [rbp + 0x1b0], edi
nop dword [rax]
mov eax, r11d
sub eax, 0x98
je 0x18002eef2
sub eax, 1
je 0x18002ee51
sub eax, 1
je 0x18002ee08
sub eax, 4
je 0x18002eed1
cmp eax, 1
jne 0x18002ee26
cmp dword [rbp + 0x94], 0
mov edx, dword [rbp - 0x30]
je 0x18002eddc
lea rax, [rbp + 0x1c4]
mov eax, dword [rax]
mov dword [rbp + 0xac], eax
lea rax, [rbp + 0x1bc]
mov eax, dword [rax]
mov dword [rbp + 0xa8], eax
lea rax, [rbp + 0x1bc]
mov eax, dword [rax]
mov dword [rbp + 0xa4], eax
lea rax, [rbp + 0x1b4]
mov eax, dword [rax]
mov dword [rbp + 0xa0], eax
jmp 0x18002ee29
lea rax, [rbp + 0x1b8]
mov dword [rbp + 0xa8], edi
mov eax, dword [rax]
mov dword [rbp + 0xac], eax
lea rax, [rbp + 0x1c0]
mov eax, dword [rax]
mov dword [rbp + 0xa4], eax
mov dword [rbp + 0xa0], esi
jmp 0x18002ee29
test esi, esi
jle 0x18002ee47
mov eax, dword [rbp + 0xb8]
add eax, edi
cmp eax, dword [rbp + 0x80]
jge 0x18002ee47
mov r12d, 1
mov dword [rbp + 0x3c], r12d
mov edx, dword [rbp - 0x30]
dec r11d
cmp r11d, 0x95
ja 0x18002ed60
mov r13d, edx
mov dword [rbp + 0xd0], edx
jmp 0x18002eefd
xor eax, eax
mov r12d, eax
mov dword [rbp + 0x3c], eax
jmp 0x18002ee26
mov eax, dword [rbp + 0x94]
mov ecx, r10d
cmp eax, dword [rbp + 0xb8]
mov r9d, eax
mov eax, edi
cmovle r9d, dword [rbp + 0xb8]
cdq
idiv r10d
sub ecx, r9d
cmp edx, ecx
jne 0x18002ee90
mov eax, esi
mov r13d, 0
cdq
idiv r10d
test edx, edx
cmove r12d, r13d
mov dword [rbp + 0x3c], r12d
jmp 0x18002ee93
xor r13d, r13d
lea ecx, [r9 + r9]
cmp ecx, r10d
jg 0x18002eec6
nop dword [rax]
mov eax, edi
mov r8d, ecx
cdq
sub r8d, r9d
idiv ecx
cmp edx, r8d
jne 0x18002eebb
mov eax, esi
cdq
idiv ecx
test edx, edx
cmovg r12d, r13d
add ecx, ecx
cmp ecx, r10d
jle 0x18002eea0
mov dword [rbp + 0x3c], r12d
mov edx, r12d
mov dword [rbp - 0x30], edx
jmp 0x18002ee29
movaps xmm0, xmmword [rbp + 0xa0]
mov r13d, dword [rbp + 0xa0]
movdqa xmmword [rbp + 0x210], xmm0
mov eax, dword [rbp + 0x210]
mov dword [rbp - 0x30], eax
jmp 0x18002eef6
mov r13d, dword [rbp - 0x30]
mov dword [rbp + 0xd0], r13d
mov r9, qword [rbp - 0x50]
mov eax, dword [r9 + 0x20]
imul eax, edi
add eax, esi
cdqe
add rax, qword [r9]
mov qword [rbp + 0x220], rax
mov eax, dword [r9 + 0x24]
imul eax, dword [rbp + 0x78]
add eax, dword [rbp + 0x88]
movsxd rcx, eax
mov rax, qword [r9 + 8]
add rax, rcx
mov qword [rbp + 0x210], rax
mov rax, qword [r9 + 0x10]
add rax, rcx
mov qword [rbp + 0x230], rax
jmp 0x18002f3c7
mov rax, qword [r15 + 0x2358]
lea r8, [rbp + 8]
mov r9d, 0xd1
mov dword [rbp - 0x38], r11d
lea rdx, [rbp + 0x140]
mov ecx, dword [rax + 8]
mov eax, 1
shl eax, cl
lea rcx, [rbp - 0x18]
mov dword [rbp + 8], eax
mov eax, dword [rbp + 0x84]
mov dword [rbp + 0x60], eax
mov eax, dword [rbp + 0xb8]
mov dword [rbp + 0x40], eax
mov eax, dword [rbp + 0x94]
mov dword [rbp], eax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x140], r10d
call fcn.180013450
mov rbx, rax
jmp 0x18002f3c7
mov eax, dword [rdx + 4]
mov dword [rbp + 0xe0], eax
mov eax, dword [rbp - 0x6c]
mov dword [rbp + 0x94], eax
mov dword [rbp + 0xb8], eax
jmp 0x18002f3cb
mov rax, qword [r15 + 0x2358]
lea r8, [rbp + 8]
mov esi, dword [rbp + 0x90]
mov edx, 0xa7
mov dword [rbp + 8], esi
mov ecx, dword [rax + 0xf8]
mov dword [rbp], ecx
lea rcx, [rbp]
call fcn.180086240
mov edx, dword [rbp + 0x24]
lea r9, [rbp - 0x60]
mov ecx, dword [rbp + 0xe0]
xor edi, edi
cmp dword [rbp + 0x8c], edi
mov r8, qword [rbp + 0x70]
mov dword [rbp - 0x38], edx
mov dword [rbp], edx
lea rdx, [rbp + 8]
mov qword [rsp + 0xa8], rdx
lea rdx, [rbp]
mov qword [rsp + 0xa0], rdx
lea rdx, [rbp + 0x40]
mov qword [rsp + 0x98], rdx
lea rdx, [rbp + 0x60]
mov dword [rsp + 0x90], 0xb3
mov qword [rsp + 0x88], rdx
lea rdx, [rbp - 0x38]
mov qword [rsp + 0x80], rdx
lea rdx, [rbp - 0x18]
mov qword [rsp + 0x78], rdx
mov rdx, qword [rbp + 0x220]
mov qword [rsp + 0x70], rdx
lea rdx, [rbp - 0x80]
mov qword [rsp + 0x68], rdx
lea rdx, [rbp + 0x48]
mov qword [rsp + 0x60], rdx
mov rdx, qword [rbp + 0xf8]
mov qword [rsp + 0x58], rdx
lea rdx, [rbp + 0x50]
mov dword [rbp + 8], ecx
mov ecx, dword [rbp + 0x28]
mov dword [rbp - 0x68], ecx
mov ecx, 2
cmove edi, ecx
mov qword [rsp + 0x50], rdx
mov ecx, dword [rbp - 0x74]
lea rdx, [rbp - 0x68]
mov dword [rbp - 0x80], ecx
mov ecx, dword [rbp - 0x78]
mov qword [rsp + 0x48], rdx
mov rdx, r15
mov dword [rbp + 0x48], ecx
mov rcx, qword [rbp - 0x50]
mov dword [rbp + 0x50], esi
mov dword [rbp + 0x40], r13d
mov dword [rbp - 0x58], ebx
mov ecx, dword [rcx + 0x20]
mov dword [rbp + 0x60], ecx
movsxd rcx, eax
mov dword [rbp - 0x60], edi
lea rsi, [rcx + rcx*8]
shl rsi, 5
add rsi, r15
lea rax, [rsi + 0x3298]
mov qword [rsp + 0x40], rax
lea rcx, [rsi + 0x2518]
mov rax, qword [rbp + 0xb0]
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0x2d0]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x118]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
call fcn.1800bea90
mov rcx, qword [r15 + 0x2358]
mov eax, dword [rax]
cmp dword [rcx + 0xfc], 0x190
mov dword [rbp + 0x10], eax
je 0x18002f339
cmp dword [rbp + 0x28], 0
mov edx, dword [rbp - 0x48]
je 0x18002f176
cmp edx, 4
jle 0x18002f176
mov eax, 1
jmp 0x18002f178
xor eax, eax
mov dword [rbp + 0x50], eax
mov rax, qword [rbp + 0x3f0]
mov r9, qword [rbp + 0x30]
mov dword [rbp + 0x48], edx
mov dword [rbp - 0x60], edx
mov eax, dword [rax + 0x194c]
mov rdx, qword [rbp + 0xc0]
mov dword [rbp + 0x60], eax
mov eax, dword [rbp + 0x24]
mov dword [rbp + 8], eax
xor eax, eax
cmp dword [rcx + 0x10c], eax
mov r8d, eax
mov eax, dword [rbp + 0xe0]
lea rcx, [rsi + 0x32f8]
cmovne r8, qword [rbp + 0x70]
or edi, 1
mov dword [rbp], eax
mov eax, dword [rbp + 0x20]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp + 0x88]
mov qword [rsp + 0xf0], rdx
lea rdx, [rbp - 0x18]
mov dword [rbp - 0x80], eax
mov eax, dword [rbp + 0x78]
mov dword [rbp - 0x38], eax
mov rax, qword [rbp - 0x50]
mov dword [rbp - 0x58], r13d
mov dword [rbp + 0x40], ebx
mov dword [rbp - 0x18], edi
mov eax, dword [rax + 0x24]
mov dword [rbp - 0x68], eax
lea rax, [rsi + 0x2578]
mov qword [rsp + 0xe8], rax
mov rax, qword [rbp + 0x58]
mov qword [rsp + 0xe0], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0xd8], rax
mov rax, qword [rbp - 8]
mov qword [rsp + 0xd0], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0xc8], rax
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0xc0], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0xb8], rax
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xa8], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0xa0], rax
lea rax, [rbp + 0x48]
mov qword [rsp + 0x98], rax
lea rax, [rbp + 8]
mov qword [rsp + 0x90], rax
lea rax, [rbp]
mov dword [rsp + 0x88], 0xd7
mov qword [rsp + 0x80], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x70], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x230]
mov qword [rsp + 0x60], rax
mov rax, qword [rbp + 0x1d8]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0xf8]
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x1d0]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x138]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x210]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x2e0]
call fcn.180067e80
mov eax, dword [rax]
mov r8d, eax
mov dword [rbp + 0x18], eax
mov dword [rbp - 0x80], eax
mov dword [rbp + 0x14], eax
jmp 0x18002f3cb
xor eax, eax
mov qword [rbp + 0x14], rax
mov r8d, eax
mov dword [rbp - 0x80], eax
jmp 0x18002f3cb
cmp r14d, 0xef97
je 0x18002f372
cmp r14d, 0x12b67
jne 0x18002f3cb
cmp dword [rbp + 0x18], 0
je 0x18002f3cb
lea rcx, [rdx + 0x1050]
mov rdx, qword [rbp + 0xc0]
jmp 0x18002f3bc
movzx eax, byte [rbp + 0x18]
sar r8d, 8
cmp dword [rbp + 0x10], 0
mov dword [rbp - 0x80], r8d
mov dword [rbp + 0x14], r8d
mov dword [rbp + 0x18], eax
je 0x18002f3a5
lea rcx, [rdx + 0x50]
mov r8d, 0x800
mov rdx, qword [rbp + 0xb0]
call fcn.1800c9d60
mov r8d, dword [rbp - 0x80]
test r8d, r8d
je 0x18002f3cb
mov rcx, qword [rbp + 0x3e8]
mov rdx, qword [rbp + 0x68]
add rcx, 0x850
mov r8d, 0x800
call fcn.1800c9d60
mov r8d, dword [rbp - 0x80]
mov r10d, dword [rbp - 0x78]
add r14d, 0x3bd0
mov r11d, dword [rbp - 0x74]
cmp r14d, 0x166e0
jbe 0x18002ecf0
mov r13d, dword [rbp + 0x38]
mov qword [rbp + 0x138], rbx
jmp 0x18002fd66
mov rbx, qword [rbp + 0x3f0]
mov r14d, 0x76
mov r12d, dword [rbp - 0x80]
mov dword [rbp - 0x38], r14d
jmp 0x18002f417
mov rdx, qword [rbp + 0x3e8]
cmp r14d, 0x76
jne 0x18002fd43
lea eax, [rdi - 2]
xor r8d, r8d
cmp eax, 1
jbe 0x18002f431
mov esi, r8d
jmp 0x18002f43b
mov rax, qword [r15 + 0x2358]
mov esi, dword [rax + 0x68]
cmp dword [rdx + 0x38], 2
je 0x18002f54b
cmp edi, 3
je 0x18002f54b
movsxd rax, dword [rdx + 0x30]
movsxd rcx, dword [r15 + rax*4 + 0x18]
test ecx, ecx
js 0x18002f465
mov rdi, qword [r15 + rcx*8 + 0x2378]
jmp 0x18002f46c
mov rdi, qword [r15 + 0x2480]
mov eax, dword [r9 + 0x50]
mov r13d, r8d
cmp dword [rdi + 0x50], eax
lea r9, [rbp + 0x160]
mov rax, qword [r15 + 0x2358]
lea r8, [rbp + 0x168]
setg r13b
mov qword [rbp + 0xf0], rdi
mov dword [rbp + 0x38], r13d
mov ecx, dword [rax + 0x114]
mov eax, dword [rbp + 0x7c]
mov dword [rbp + 0x150], eax
mov eax, dword [r15 + 0x24dc]
mov dword [rbp + 0x160], ecx
lea rcx, [rbp + 0x148]
mov qword [rsp + 0x68], rcx
lea rcx, [rbp + 0x150]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x58], rcx
lea rcx, [rbp + 0x158]
mov qword [rsp + 0x50], rcx
lea rcx, [rbp + 0x2f0]
mov dword [rbp + 0x158], eax
mov eax, dword [r15 + 0x24d8]
mov dword [rbp + 0x168], eax
lea rax, [rdx + 0x10]
mov rdx, qword [rbp + 0x58]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x70]
mov dword [rsp + 0x40], 0x4e
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x1e8]
mov dword [rbp + 0x148], esi
mov rsi, qword [rbp + 0x30]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
mov dword [rbp + 0x1e8], r13d
call fcn.180085a40
mov edi, dword [rbp - 0x20]
jmp 0x18002f957
mov r12d, dword [rbp + 0x7c]
mov r14d, 0xe4
nop word [rax + rax]
mov eax, r14d
sub eax, 0xe4
je 0x18002f8d9
cmp eax, 1
jne 0x18002f92a
cmp dword [r15 + 8], 2
jne 0x18002f643
mov rcx, qword [r15 + 0x2358]
cmp dword [rcx + 0x7c], 2
jne 0x18002f643
test edi, edi
jne 0x18002f643
cmp dword [rdx + 8], edi
jne 0x18002f643
mov eax, dword [r15 + 0x2350]
lea rdx, [rbp + 0x188]
mov r8, qword [rbp + 0x58]
mov r9d, 0x124
mov dword [rbp - 0x18], eax
mov eax, dword [rcx + 0x74]
mov rcx, qword [rbp + 0x120]
inc eax
mov dword [rbp + 0x188], eax
mov eax, dword [rbp + 0x80]
mov dword [rbp + 0x180], eax
mov eax, dword [rbp + 0x84]
mov dword [rbp + 0x178], eax
mov rax, qword [r15 + 0x24c8]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x178]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp + 0x30]
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x180]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0x70]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0xf0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x20], rax
call fcn.1800c0b80
jmp 0x18002f92a
mov edi, 0xc
nop dword [rax + rax]
cmp edi, 0xc
je 0x18002f7d2
cmp edi, 0x144
je 0x18002f7b8
cmp edi, 0x27c
jne 0x18002f8b8
mov rax, qword [r15 + 0x2358]
lea r9, [rbp + 0x1c0]
lea r8, [rbp + 0x1c8]
mov ecx, dword [rax + 0x114]
mov eax, dword [r15 + 0x24dc]
mov dword [rbp + 0x1a0], eax
mov eax, dword [r15 + 0x24d8]
mov dword [rbp + 0x1c8], eax
lea rax, [rdx + 0x20]
mov rdx, qword [rbp + 0x110]
mov dword [rbp + 0x1c0], ecx
lea rcx, [rbp + 0x190]
mov qword [rsp + 0x68], rcx
lea rcx, [rbp + 0x198]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x58], rcx
lea rcx, [rbp + 0x1a0]
mov qword [rsp + 0x50], rcx
lea rcx, [rbp + 0x300]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0xe8]
mov dword [rsp + 0x40], 0x4e
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0x120]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x190], esi
mov dword [rbp + 0x198], r12d
mov dword [rbp + 0x1a8], r13d
call fcn.180085a40
mov eax, dword [rbx + 0x194c]
lea r9, [rbp - 0x18]
mov rdx, qword [rbp + 0xe8]
mov r8, rbx
mov rcx, qword [rbp + 0x110]
mov dword [rbp - 0x18], eax
mov rax, qword [rbp + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x108]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp + 0xc8]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x30]
mov dword [rsp + 0x40], 0x3c
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x70]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x100]
mov qword [rsp + 0x20], rax
call fcn.1800232d0
jmp 0x18002f8ad
mov rcx, qword [rbp + 0x120]
mov r13d, r8d
mov eax, dword [r9 + 0x50]
cmp dword [rcx + 0x50], eax
setg r13b
jmp 0x18002f8b8
mov eax, dword [r9 + 0x50]
mov r13d, r8d
mov r8, qword [rbp + 0xf0]
lea r9, [rbp + 0x200]
cmp dword [r8 + 0x50], eax
mov rax, qword [r15 + 0x2358]
setg r13b
mov ecx, dword [rax + 0x114]
mov eax, dword [r15 + 0x24dc]
mov dword [rbp + 0x1f0], eax
mov eax, dword [r15 + 0x24d8]
mov dword [rbp + 0x200], ecx
lea rcx, [rbp + 0x1e0]
mov qword [rsp + 0x68], rcx
lea rcx, [rbp + 0x170]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x58], rcx
lea rcx, [rbp + 0x1f0]
mov qword [rsp + 0x50], rcx
lea rcx, [rbp + 0x310]
mov dword [rbp + 0x128], eax
lea rax, [rdx + 0x10]
mov rdx, qword [rbp + 0xd8]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x100]
mov dword [rsp + 0x40], 0x4e
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x1f8]
mov qword [rsp + 0x30], r8
lea r8, [rbp + 0x128]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x108]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x1e0], esi
mov dword [rbp + 0x170], r12d
mov dword [rbp + 0x1f8], r13d
call fcn.180085a40
mov r9, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x3e8]
add edi, 0x138
mov r8d, 0
cmp edi, 0x3a8
jbe 0x18002f650
mov edi, dword [rbp - 0x20]
mov dword [rbp + 0x38], r13d
jmp 0x18002f92a
movsxd rax, dword [rdx + 0x30]
movsxd rcx, dword [r15 + rax*4 + 0x18]
test ecx, ecx
js 0x18002f8f7
mov r8, qword [r15 + rcx*8 + 0x2378]
mov qword [rbp + 0xf0], r8
jmp 0x18002f905
mov rax, qword [r15 + 0x2480]
mov qword [rbp + 0xf0], rax
movsxd rax, dword [rdx + 0x34]
movsxd rcx, dword [r15 + rax*4 + 0x18]
test ecx, ecx
js 0x18002f91c
mov rax, qword [r15 + rcx*8 + 0x2378]
jmp 0x18002f923
mov rax, qword [r15 + 0x2480]
mov qword [rbp + 0x120], rax
mov rdx, qword [rbp + 0x3e8]
inc r14d
mov r9, qword [rbp - 0x50]
mov r8d, 0
cmp r14d, 0xe6
jb 0x18002f560
mov r14d, dword [rbp - 0x38]
mov r12d, dword [rbp - 0x80]
mov rsi, qword [rbp + 0x30]
test edi, edi
je 0x18002fcd3
cmp dword [rbp + 0x130], 0
jne 0x18002fcd3
mov r13d, dword [rbp + 0x18]
mov r14d, 0x6b
mov eax, r14d
sub eax, 0x6b
je 0x18002f9c5
cmp eax, 1
jne 0x18002fcb9
mov rdi, qword [rbp + 0x3e8]
test r12d, r12d
je 0x18002f9a9
mov rdx, qword [rbp + 0x68]
lea rcx, [rdi + 0x850]
mov r8d, 0x800
call fcn.1800c9d60
test r13d, r13d
je 0x18002fcb9
mov rdx, qword [rbp + 0xc0]
lea rcx, [rdi + 0x1050]
jmp 0x18002fcae
mov rax, qword [r15 + 0x2358]
lea r8, [rbp - 0x18]
mov r13d, dword [rbp + 0x24]
mov edx, 0xa7
mov dword [rbp - 0x68], r13d
mov dword [rbp - 0x58], r13d
mov ecx, dword [rax + 0xf8]
mov eax, dword [rbp + 0x28]
mov dword [rbp + 0x50], eax
xor eax, eax
cmp dword [rbp + 0x8c], eax
mov edi, eax
mov dword [rbp - 0x40], ecx
mov eax, 2
mov ecx, dword [rbp + 0x90]
cmove edi, eax
mov dword [rbp - 0x18], ecx
mov dword [rbp - 0x60], ecx
lea rcx, [rbp - 0x40]
mov dword [rbp + 0x48], edi
call fcn.180086240
mov r12, qword [rbp + 0x70]
lea r8, [rbp + 0x48]
mov rdx, qword [rbp + 0x118]
mov r9d, 0x3d
movsxd rcx, eax
lea rsi, [rcx + rcx*8]
shl rsi, 5
add rsi, r15
lea rax, [rsi + 0x24e8]
mov qword [rsp + 0x60], rax
lea rcx, [rsi + 0x3268]
lea rax, [rbp - 0x60]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0xb0]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0xf8]
mov qword [rsp + 0x38], rcx
mov rcx, r15
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
call fcn.18005bdd0
mov rcx, qword [r15 + 0x2358]
mov dword [rbp + 0x10], eax
mov rdx, rcx
cmp dword [rcx + 0x110], 0
je 0x18002fb30
cmp dword [rcx + 0xfc], 0x190
je 0x18002fb30
mov ecx, dword [rcx + 0x114]
lea rax, [rbp - 0x18]
mov qword [rsp + 0x48], r12
lea r9, [rbp - 0x60]
mov r12, qword [rbp + 0x58]
lea r8, [rbp - 0x58]
mov dword [rsp + 0x40], 0x6f
lea rdx, [rbp - 0x68]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x40]
mov dword [rbp - 0x68], ecx
mov ecx, dword [rbx + 0x194c]
mov dword [rbp - 0x60], r13d
mov dword [rbp - 0x18], r13d
mov dword [rbp - 0x58], r13d
mov r13, qword [rbp + 0x30]
mov dword [rbp - 0x40], ecx
mov rcx, qword [rbp + 0xf8]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
call fcn.180062fe0
mov rdx, qword [r15 + 0x2358]
jmp 0x18002fb38
mov r12, qword [rbp + 0x58]
mov r13, qword [rbp + 0x30]
cmp dword [rdx + 0xfc], 0x190
je 0x18002fc87
cmp dword [rbp + 0x28], 0
mov ecx, dword [rbp - 0x48]
je 0x18002fb5d
cmp ecx, 4
jle 0x18002fb5d
mov eax, 1
jmp 0x18002fb5f
xor eax, eax
mov rdx, qword [rbp - 8]
lea r8, [rbp - 0x68]
mov dword [rbp - 0x58], eax
or edi, 1
mov eax, dword [rbp + 0x20]
mov r9d, 0x3d
mov dword [rbp - 0x18], eax
lea rax, [rsi + 0x2548]
mov qword [rsp + 0x60], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0x1d8]
mov dword [rbp - 0x60], ecx
mov dword [rbp - 0x40], ecx
lea rcx, [rsi + 0x32c8]
mov qword [rsp + 0x38], rcx
mov rcx, r15
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
mov dword [rbp - 0x68], edi
call fcn.18005bdd0
cmp dword [rbp + 0x28], 0
mov dword [rbp - 0x80], eax
mov dword [rbp + 0x14], eax
mov eax, dword [rbp - 0x48]
je 0x18002fbfb
cmp eax, 4
jle 0x18002fbfb
mov ecx, 1
jmp 0x18002fbfd
xor ecx, ecx
mov rdx, qword [rbp - 0x10]
lea r8, [rbp - 0x68]
mov dword [rbp - 0x60], eax
mov r9d, 0x3d
mov dword [rbp - 0x40], eax
lea rax, [rsi + 0x25a8]
mov qword [rsp + 0x60], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0xc0]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0x1d0]
mov dword [rbp - 0x58], ecx
mov ecx, dword [rbp + 0x20]
mov dword [rbp - 0x18], ecx
lea rcx, [rsi + 0x3328]
mov qword [rsp + 0x38], rcx
mov rcx, r15
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov dword [rbp - 0x68], edi
call fcn.18005bdd0
mov r12d, dword [rbp - 0x80]
mov dword [rbp + 0x18], eax
jmp 0x18002fc93
xor eax, eax
mov qword [rbp + 0x14], rax
mov r12d, eax
mov dword [rbp - 0x80], eax
cmp dword [rbp + 0x10], 0
mov r13d, eax
je 0x18002fcb9
mov rcx, qword [rbp + 0x3e8]
mov rdx, qword [rbp + 0xb0]
add rcx, 0x50
mov r8d, 0x800
call fcn.1800c9d60
inc r14d
cmp r14d, 0x6d
jb 0x18002f976
mov r13d, dword [rbp + 0x38]
mov r14d, dword [rbp - 0x38]
mov edi, dword [rbp - 0x20]
jmp 0x18002fd3f
mov eax, dword [rbp + 0x24]
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0xf8]
imul eax, eax
movsxd r8, eax
call fcn.1800c9d60
mov rax, qword [r15 + 0x2358]
cmp dword [rax + 0xfc], 0x190
je 0x18002fd30
mov eax, dword [rbp - 0x48]
mov rdx, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x1d8]
imul eax, eax
movsxd rdi, eax
mov r8, rdi
call fcn.1800c9d60
mov rcx, qword [rbp + 0x1d0]
mov r8, rdi
mov rdx, rsi
call fcn.1800c9d60
mov edi, dword [rbp - 0x20]
xor eax, eax
mov qword [rbp + 0x14], rax
mov r12d, eax
mov dword [rbp - 0x80], eax
mov dword [rbp + 0x10], eax
mov r9, qword [rbp - 0x50]
add r14d, 0x5b44
mov dword [rbp - 0x38], r14d
cmp r14d, 0x5b44
jbe 0x18002f410
mov rbx, qword [rbp + 0x138]
mov r12d, dword [rbp + 0x3c]
mov rax, qword [rbp + 0x3e8]
mov r8d, 0xc5
movsd xmm0, qword [rbp + 0x10]
mov ecx, dword [rbp + 0x18]
mov r9, qword [rbp + 0x3f0]
mov rdx, qword [rbp + 0x408]
movsd qword [rax + 0x3c], xmm0
mov dword [rax + 0x44], ecx
lea rcx, [rbp + 0x360]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.180087690
mov rsi, qword [rbp + 0x3f0]
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rax + 0x10]
movd edi, xmm1
movups xmmword [rbp + 0x370], xmm0
jmp 0x18002fe95
mov rcx, qword [rbp + 0x3f0]
mov rsi, rcx
mov rax, qword [rcx + 0x10]
lea rdx, [rax + 0x4000]
add rax, 0x8000
mov qword [rbp - 0x10], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0xf8], rax
add rax, 0x4000
mov qword [rbp + 0x1d8], rax
mov qword [rbp - 8], rdx
jmp 0x18002fea5
mov r9d, 0x42
lea rcx, [rbp + 0x320]
mov r8, r14
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0xb0]
lea rcx, [rbp + 0x330]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0x68]
lea rcx, [rbp + 0x340]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r8, qword [rbp + 0xc0]
lea rcx, [rbp + 0x350]
jmp 0x18002fe88
cmp dword [rbp + 0x28], 0
je 0x18002fe7a
mov dword [rdx + 0x44], 1
mov dword [rdx + 0x40], 1
mov dword [rdx + 0x3c], 1
mov r8, qword [rbp + 0x100]
lea rcx, [rbp + 0x240]
mov r9d, 0x42
xor edx, edx
call fcn.1800a7ae0
mov r11d, dword [rbp - 0x74]
mov r10d, dword [rbp - 0x78]
mov r9, qword [rbp - 0x50]
mov r8d, dword [rbp - 0x80]
mov ecx, dword [rbp - 0x70]
mov eax, dword [rbp + 0x3f8]
inc eax
mov dword [rbp + 0x3f8], eax
cmp eax, ecx
jae 0x18002e49f
mov rdx, qword [rbp + 0x3e8]
mov r14, qword [rbp + 0x30]
jmp 0x18002eaa0
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
mov dword [rcx], edi
jmp 0x18002e4a6