Function at 0x180062fe0
Capabilities:
Check for software breakpoints

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 - 0x128]
sub rsp, 0x228
mov ecx, dword [rbp + 0x1b0]
mov r11, r9
mov r10, r8
lea eax, [rcx - 0xd]
mov dword [rsp + 0x5c], eax
cmp ecx, eax
jbe case.0x1800630a3.123
mov r8d, dword [rbp + 0x1b0]
mov r13d, dword [rbp - 0x80]
mov r12d, dword [rsp + 0x68]
mov eax, dword [rsp + 0x64]
mov r15d, dword [rsp + 0x50]
mov r14d, dword [rsp + 0x54]
mov esi, dword [rsp + 0x58]
mov edx, dword [rsp + 0x60]
mov r9d, dword [rsp + 0x5c]
mov qword [rbp - 0x18], r8
nop dword [rax]
add ecx, 0xffffff96
mov dword [rbp + 0x20], eax
mov dword [rbp - 0x38], edx
mov ebx, eax
mov dword [rbp - 0x30], esi
mov edi, edx
mov dword [rbp - 0x28], r14d
mov dword [rbp - 0x50], r15d
cmp ecx, 0x1f
ja case.default.0x1800630a3
lea r9, [0x180000000]
movzx ecx, byte [r9 + rcx + 0x64450]
mov r9d, dword [r9 + rcx*4 + 0x6441c]
lea rcx, [0x180000000]
add r9, rcx
jmp r9
mov r9, qword [rbp - 0x20]
mov byte [r9], 0x64
inc r9
mov qword [rbp - 0x20], r9
jmp case.0x1800630a3.112
xor r11d, r11d
mov qword [rbp + 0x40], r11
mov qword [rbp + 0x48], r11
jmp case.0x1800630a3.112
xor ebx, ebx
mov r9d, ebx
mov qword [rbp - 0x48], rbx
mov r10d, ebx
mov qword [rbp + 0x38], rbx
mov esi, ebx
cmp dword [rbp - 0x6c], ebx
jle 0x1800632cc
mov eax, dword [rbp - 0x10]
mov r15d, ebx
mov edx, dword [rbp + 0x24]
mov r12d, dword [rbp + 0x28]
mov edi, ebx
lea r8d, [r15 + 1]
mov r14d, ebx
nop dword [rax + rax]
mov ebx, 0xc1
nop word [rax + rax]
cmp ebx, 0x274
ja 0x180063245
je 0x180063217
cmp ebx, 0xc1
je 0x1800631de
cmp ebx, 0x152
je 0x18006314e
cmp ebx, 0x1e3
jne 0x180063277
movsxd rcx, edx
add qword [rbp - 8], rcx
jmp 0x180063277
mov rax, qword [rbp + 0x190]
cmp dword [rax], 0
je 0x1800631b7
mov rax, qword [rbp + 0x180]
mov r9d, dword [rax]
mov ecx, r9d
mov rax, qword [rbp + 0x1b8]
imul ecx, r8d
imul r9d, r15d
add ecx, r14d
movsxd r11, ecx
add r9d, r14d
movsxd r9, r9d
movzx r10d, byte [r11 + rax + 1]
movzx ecx, byte [r9 + rax + 1]
add r10d, ecx
movzx ecx, byte [r11 + rax]
movzx eax, byte [r9 + rax]
add r10d, 2
add r10d, ecx
add eax, r10d
mov r10, qword [rbp + 0x38]
shr eax, 2
mov ecx, eax
add qword [rbp - 0x40], rcx
jmp 0x180063277
mov rax, qword [rbp + 0x1a8]
mov ecx, dword [rax]
mov rax, qword [rbp + 0x1b8]
imul ecx, esi
add ecx, edi
movsxd rcx, ecx
movzx eax, byte [rcx + rax]
mov ecx, eax
add qword [rbp - 0x40], rcx
jmp 0x180063277
mov rcx, qword [rbp + 0x1a8]
mov rdx, qword [rbp + 0x1a0]
mov r9d, dword [rcx]
mov rcx, qword [rbp + 0x190]
mov ecx, dword [rcx]
sar r9d, cl
imul r9d, esi
add r9d, edi
movsxd rcx, r9d
mov r9, qword [rbp + 0x198]
movzx edx, byte [rcx + rdx]
movzx r12d, byte [rcx + r9]
jmp 0x180063277
movsxd rcx, r12d
add qword [rbp + 8], rcx
mov ecx, eax
imul ecx, eax
movsxd rcx, ecx
add qword [rbp + 0x30], rcx
mov ecx, edx
imul ecx, eax
movsxd rcx, ecx
add qword [rbp + 0x40], rcx
mov ecx, r12d
imul ecx, eax
movsxd rcx, ecx
add qword [rbp + 0x48], rcx
jmp 0x180063277
cmp ebx, 0x305
je 0x180063268
cmp ebx, 0x396
jne 0x180063277
mov ecx, r12d
imul ecx, r12d
movsxd rcx, ecx
add r10, rcx
mov qword [rbp + 0x38], r10
jmp 0x180063277
mov ecx, edx
imul ecx, edx
movsxd rcx, ecx
add r9, rcx
mov qword [rbp - 0x48], r9
mov r9, qword [rbp - 0x48]
add ebx, 0x91
cmp ebx, 0x427
jb 0x180063110
mov ecx, dword [rbp - 0x6c]
inc edi
add r14d, 2
mov dword [rbp + 0x28], r12d
mov dword [rbp + 0x24], edx
mov dword [rbp - 0x10], eax
cmp edi, ecx
jl 0x180063100
inc esi
add r15d, 2
mov ebx, 0
cmp esi, ecx
jl 0x1800630f2
mov r12d, dword [rsp + 0x68]
mov eax, dword [rsp + 0x64]
mov edx, dword [rsp + 0x60]
mov r8, qword [rbp - 0x18]
mov r9, qword [rbp - 0x40]
lea ecx, [r8 + r8]
mov r10, qword [rbp + 0x30]
imul r9, r9
sar r9, cl
sub r10, r9
mov r9, qword [rbp - 8]
imul r9, r9
mov qword [rbp], r10
sar r9, cl
sub qword [rbp - 0x48], r9
mov r10, qword [rbp + 0x180]
mov r9d, dword [rsp + 0x5c]
mov esi, dword [rsp + 0x58]
mov r14d, dword [rsp + 0x54]
mov r15d, dword [rsp + 0x50]
mov ecx, dword [rbp + 0x1b0]
dec ecx
mov dword [rbp + 0x1b0], ecx
cmp ecx, r9d
jbe case.0x1800630a3.123
mov r11, qword [rbp + 0x188]
jmp 0x180063060
mov r10d, dword [r10]
xor r15d, r15d
mov edi, r15d
test r10d, r10d
jle 0x1800634ce
mov r12d, dword [0x1801135c0]
xorps xmm3, xmm3
xorps xmm4, xmm4
mov r9d, r15d
cmp r10d, 4
jb 0x180063424
cmp r12d, 2
jl 0x180063424
mov r8d, dword [r11]
mov eax, r10d
and eax, 0x80000003
jge 0x18006337c
dec eax
or eax, 0xfffffffc
inc eax
mov rsi, qword [rbp + 0x170]
mov ebx, r10d
mov r14, qword [rbp + 0x1b8]
mov r11d, r10d
sub ebx, eax
imul r11d, edi
sub r8d, r10d
imul r8d, edi
nop dword [rax]
lea eax, [r8 + r11]
movsxd rdx, r11d
movsxd rcx, eax
add r9d, 4
add r11d, 4
movzx eax, word [rcx + rsi]
movd xmm0, eax
movzx eax, word [rdx + r14]
pmovzxbd xmm2, xmm0
movd xmm0, eax
movzx eax, word [rcx + rsi + 2]
pmovzxbd xmm1, xmm0
psubd xmm2, xmm1
pmulld xmm2, xmm2
pmovsxdq xmm0, xmm2
paddq xmm0, xmm3
movdqa xmm3, xmm0
movd xmm0, eax
movzx eax, word [rdx + r14 + 2]
pmovzxbd xmm2, xmm0
movd xmm0, eax
pmovzxbd xmm1, xmm0
psubd xmm2, xmm1
pmulld xmm2, xmm2
pmovsxdq xmm0, xmm2
paddq xmm0, xmm4
movdqa xmm4, xmm0
cmp r9d, ebx
jl 0x1800633a0
mov r11, qword [rbp + 0x188]
jmp 0x180063432
mov r14, qword [rbp + 0x1b8]
mov rsi, qword [rbp + 0x170]
cmp r9d, r10d
jge 0x18006349b
mov ecx, dword [r11]
mov eax, r10d
mov r11, qword [rbp + 0x10]
imul eax, edi
imul ecx, edi
add eax, r9d
add ecx, r9d
movsxd rdx, eax
movsxd r8, ecx
add rdx, r14
add r8, rsi
mov eax, r10d
sub eax, r9d
mov r9d, eax
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
movzx ecx, byte [r8]
lea r8, [r8 + 1]
sub ecx, eax
imul ecx, ecx
movsxd rax, ecx
add r11, rax
sub r9, 1
jne 0x180063470
mov qword [rbp + 0x10], r11
mov r11, qword [rbp + 0x188]
inc edi
cmp edi, r10d
jl 0x180063351
mov rdi, qword [rbp + 0x10]
paddq xmm3, xmm4
mov r12d, dword [rsp + 0x68]
movdqa xmm0, xmm3
psrldq xmm0, 8
paddq xmm3, xmm0
movq rax, xmm3
add rdi, rax
mov qword [rbp + 0x10], rdi
jmp 0x1800634d2
mov rdi, qword [rbp + 0x10]
mov qword [rsp + 0x40], r15
lea rax, [rsp + 0x70]
mov dword [rsp + 0x38], 0x111
xor r9d, r9d
mov qword [rsp + 0x30], r15
xor r8d, r8d
mov qword [rsp + 0x28], r15
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x70], r10d
call fcn.180026c10
mov rbx, rax
mov qword [rsp + 0x40], r15
mov rax, qword [rbp + 0x180]
xor r9d, r9d
mov dword [rsp + 0x38], 0x111
xor r8d, r8d
mov qword [rsp + 0x30], r15
xor edx, edx
mov qword [rsp + 0x28], r15
xor ecx, ecx
mov eax, dword [rax]
mov dword [rbp - 0x78], eax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
call fcn.180026c10
mov rdx, rdi
lea ecx, [rax + rbx]
mov rax, qword [rbp + 0x178]
sar rdx, cl
mov ecx, dword [rax]
mov eax, 0x40
lea ecx, [rcx*2 - 0x10]
shl eax, cl
cdqe
cmp rdx, rax
jle case.0x1800630a3.123
mov qword [rbp - 0x40], r15
mov qword [rbp - 8], r15
mov r8, qword [rbp - 0x18]
mov edx, dword [rsp + 0x60]
mov eax, dword [rsp + 0x64]
jmp 0x1800632f5
mov rbx, qword [rbp + 0x1b8]
lea r11, [rbp + 0xf0]
mov r10, qword [rbp + 0x1a0]
mov ecx, 1
sub r10, rbx
mov r9d, 2
sub r11, rbx
movd xmm3, ecx
mov rcx, rbx
nop word [rax + rax]
movd xmm2, dword [r10 + rcx]
xorps xmm0, xmm0
movd xmm1, dword [rcx]
lea rcx, [rcx + 4]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
paddd xmm2, xmm1
psrad xmm2, xmm3
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1800f7ad0]
packuswb xmm2, xmm2
movd dword [r11 + rcx - 4], xmm2
sub r9, 1
jne 0x1800635c0
mov rcx, qword [rbp + 0xf0]
mov qword [rbp + 0x18], rcx
jmp 0x1800632f5
xor ecx, ecx
mov qword [rbp + 8], rcx
mov qword [rbp + 0x30], rcx
jmp case.0x1800630a3.112
mov r11, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x1b8]
mov byte [r11], 5
add dword [rcx + 0x54], 5
mov word [r11 + 1], 0x8d9d
add r11, 3
mov qword [rbp - 0x20], r11
jmp case.0x1800630a3.112
mov r11, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x1a0]
mov r9, qword [rbp + 0x1b8]
mov word [r11], 0xfc24
add r11, 2
mov ecx, dword [rcx]
mov dword [r9 + 0x6c], ecx
xor ecx, ecx
mov dword [rbp + 0x18], ecx
mov qword [rbp - 0x20], r11
jmp case.0x1800630a3.112
mov rbx, qword [rbp + 0x1b8]
lea rdx, [rsp + 0x70]
mov r8, rbx
mov dword [rsp + 0x70], 6
mov ecx, 0x9c
call fcn.18006abf0
mov qword [rbp - 0x20], rax
cmp rax, 0
jne 0x180063578
mov eax, dword [rbx]
mov dword [rbp + 0x18], eax
mov rax, qword [rbp + 0x18]
add rsp, 0x228
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r9, qword [rbp + 8]
lea r11d, [r8 + r8]
mov r10, qword [rbp + 0x40]
mov ecx, r11d
imul r9, r9
mov dword [rbp + 0x2c], r11d
sar r9, cl
mov rcx, qword [rbp + 0x38]
sub rcx, r9
mov r9, qword [rbp - 8]
imul r9, qword [rbp - 0x40]
mov qword [rbp + 0x108], rcx
mov ecx, r11d
sar r9, cl
sub r10, r9
mov r9, qword [rbp + 8]
imul r9, qword [rbp - 0x40]
mov qword [rbp + 0x118], r10
sar r9, cl
mov rcx, qword [rbp + 0x48]
sub rcx, r9
cmp qword [rbp], 0
mov qword [rbp + 0x100], rcx
je 0x1800632f5
mov rcx, qword [rbp - 0x48]
mov r9, r10
imul rcx, qword [rbp]
imul r9, r10
add r9, r9
cmp r9, rcx
jle 0x180063d6c
mov ebx, dword [rbp - 0x58]
mov r15d, 0x1d
mov edi, dword [rbp - 0x60]
mov esi, dword [rbp - 0x68]
mov dword [rbp - 0x78], r15d
nop dword [rax + rax]
mov eax, r15d
sub eax, 0x1d
je 0x180063ccb
sub eax, 1
je 0x180063c8b
cmp eax, 1
jne 0x180063d3e
xor eax, eax
mov r9d, eax
mov dword [rsp + 0x78], eax
cmp dword [rbp - 0x6c], eax
jle 0x180063d3e
mov r15d, dword [rbp - 0xc]
mov r11d, 1
mov dword [rsp + 0x7c], r11d
jmp 0x1800637b7
mov r11d, 1
mov r14d, dword [rsp + 0x7c]
xor r10d, r10d
mov ecx, r10d
mov dword [rsp + 0x68], r10d
mov dword [rbp - 0x80], ecx
jmp 0x1800637d7
xor r10d, r10d
lea r11d, [r10 + 1]
mov rax, qword [rbp + 0x178]
mov r8d, dword [rax]
mov rax, qword [rbp + 0x188]
mov dword [rsp + 0x70], r8d
mov eax, dword [rax]
imul eax, r9d
add eax, ecx
mov rcx, qword [rbp + 0x190]
cmp dword [rcx], 0
je 0x180063b4d
add eax, eax
movsxd rcx, eax
mov rax, qword [rbp + 0x170]
movzx eax, byte [rcx + rax]
mov ecx, 0xd0
imul eax, r15d
add eax, dword [rbp - 0x70]
sar eax, 0x10
mov dword [rbp + 0x60], eax
mov eax, ecx
sub eax, 0xca
je 0x18006385f
sub eax, 3
je 0x180063888
cmp eax, 3
jne 0x180063873
mov r13d, dword [rbp + 0x60]
mov ecx, r8d
test r13d, r13d
mov edx, r13d
mov r8d, r11d
cmovs edx, r10d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x18006387f
lea r13d, [r8 - 1]
jmp 0x1800638bf
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x80], rax
movups xmmword [rbp + 0x70], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x180063827
jmp 0x1800638bf
test r13d, r13d
cmovs r13d, r10d
jmp 0x1800638bf
mov r8, qword [pe_dos_header]
lea rdx, [rsp + 0x70]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0x60]
mov qword [rsp + 0x28], r10
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov r9d, dword [rsp + 0x78]
xor r10d, r10d
mov r13d, eax
lea r11d, [r10 + 1]
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x170]
mov r8d, dword [rax]
mov rax, qword [rbp + 0x188]
mov dword [rbp - 0x58], r8d
mov eax, dword [rax]
imul eax, r9d
add eax, dword [rbp - 0x80]
add eax, eax
cdqe
movzx ecx, byte [rax + rcx + 1]
imul ecx, r15d
add ecx, dword [rbp - 0x70]
sar ecx, 0x10
mov dword [rbp + 0x70], ecx
mov ecx, 0xd0
nop
mov eax, ecx
sub eax, 0xca
je 0x180063935
sub eax, 3
je 0x180063960
cmp eax, 3
jne 0x18006394c
mov ebx, dword [rbp + 0x70]
mov ecx, r8d
test ebx, ebx
mov edx, ebx
mov r8d, r11d
cmovs edx, r10d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x180063958
lea ebx, [r8 - 1]
jmp 0x180063989
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x90], rax
movups xmmword [rbp + 0x80], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x180063900
jmp 0x180063989
test ebx, ebx
cmovs ebx, r10d
jmp 0x180063989
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x58]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x28], r10
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov ebx, eax
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x170]
mov r8d, dword [rax]
mov rax, qword [rbp + 0x188]
mov dword [rbp - 0x60], r8d
mov eax, dword [rax]
imul eax, r14d
add eax, dword [rsp + 0x68]
cdqe
movzx ecx, byte [rax + rcx]
imul ecx, r15d
add ecx, dword [rbp - 0x70]
sar ecx, 0x10
mov dword [rbp + 0x50], ecx
mov ecx, 0xd0
mov eax, ecx
sub eax, 0xca
je 0x180063a08
sub eax, 3
je 0x180063a2d
cmp eax, 3
jne 0x180063a19
mov edi, dword [rbp + 0x50]
mov ecx, r8d
test edi, edi
mov r10d, 1
mov edx, edi
mov r9d, 0
cmovs edx, r9d
mov r8d, r10d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x180063a25
lea edi, [r8 - 1]
jmp 0x180063a61
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x70], rax
movups xmmword [rbp + 0x60], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x1800639c7
jmp 0x180063a58
test edi, edi
cmovs edi, r9d
jmp 0x180063a61
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x60]
xor eax, eax
lea rcx, [rbp + 0x50]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rax, qword [0x180112060]
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov edi, eax
mov r10d, 1
xor r9d, r9d
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x170]
mov r8d, dword [rax]
mov rax, qword [rbp + 0x188]
mov dword [rbp - 0x68], r8d
mov eax, dword [rax]
imul eax, r14d
add eax, dword [rsp + 0x68]
cdqe
movzx ecx, byte [rax + rcx + 1]
imul ecx, r15d
add ecx, dword [rbp - 0x70]
sar ecx, 0x10
mov dword [rbp + 0x90], ecx
mov ecx, 0xd0
mov eax, ecx
sub eax, 0xca
je 0x180063adb
sub eax, 3
je 0x180063b09
cmp eax, 3
jne 0x180063af5
mov esi, dword [rbp + 0x90]
mov ecx, r8d
test esi, esi
mov edx, esi
mov r8d, r10d
cmovs edx, r9d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x180063b01
lea esi, [r8 - 1]
jmp 0x180063b35
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xb0], rax
movups xmmword [rbp + 0xa0], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x180063aa3
jmp 0x180063b35
test esi, esi
cmovs esi, r9d
jmp 0x180063b35
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x68]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0x90]
mov qword [rsp + 0x28], r9
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov esi, eax
mov r9d, dword [rsp + 0x78]
lea eax, [rsi + rdi]
add eax, ebx
lea edx, [r13 + 2]
add edx, eax
shr edx, 2
jmp 0x180063c10
mov rcx, qword [rbp + 0x170]
cdqe
movzx ecx, byte [rax + rcx]
imul ecx, r15d
add ecx, dword [rbp - 0x70]
sar ecx, 0x10
mov dword [rbp + 0xa0], ecx
mov ecx, 0xd0
nop
mov eax, ecx
sub eax, 0xca
je 0x180063bab
sub eax, 3
je 0x180063bda
cmp eax, 3
jne 0x180063bc5
mov r12d, dword [rbp + 0xa0]
mov ecx, r8d
test r12d, r12d
mov edx, r12d
mov r8d, r11d
cmovs edx, r10d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x180063bd1
lea r12d, [r8 - 1]
jmp 0x180063c0d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xc0], rax
movups xmmword [rbp + 0xb0], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x180063b70
jmp 0x180063c0d
test r12d, r12d
cmovs r12d, r10d
jmp 0x180063c0d
mov r8, qword [pe_dos_header]
lea rdx, [rsp + 0x70]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0xa0]
mov qword [rsp + 0x28], r10
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov r9d, dword [rsp + 0x78]
mov r12d, eax
mov edx, r12d
mov rax, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x190]
mov r8, qword [rbp + 0x1a0]
add dword [rsp + 0x68], 2
mov eax, dword [rax]
mov ecx, dword [rcx]
sar eax, cl
mov ecx, dword [rbp - 0x80]
imul eax, r9d
add eax, ecx
inc ecx
cdqe
mov dword [rbp - 0x80], ecx
mov byte [rax + r8], dl
mov eax, dword [rbp - 0x6c]
cmp ecx, eax
jl 0x1800637d0
add dword [rsp + 0x7c], 2
inc r9d
mov dword [rbp - 0x68], esi
mov dword [rbp - 0x60], edi
mov dword [rbp - 0x58], ebx
mov dword [rbp - 0x80], r13d
mov dword [rsp + 0x68], r12d
mov dword [rsp + 0x78], r9d
cmp r9d, eax
jl 0x1800637b1
mov r15d, dword [rbp - 0x78]
mov r10, qword [rbp + 0x118]
mov r11d, dword [rbp + 0x2c]
jmp 0x180063d3e
mov rcx, qword [rbp + 0xf8]
mov edx, 0x80000000
lea rax, [rcx + 0x8000]
cmp rax, rdx
jl 0x180063caf
mov dword [rbp - 0x70], 0x7fffffff
jmp 0x180063d3e
cmp rax, 0xffffffff80000000
jle 0x180063cc2
lea eax, [rcx + 0x8000]
mov dword [rbp - 0x70], eax
jmp 0x180063d3e
mov dword [rbp - 0x70], 0x80000000
jmp 0x180063d3e
mov rax, r10
mov r14d, 1
shl rax, 0x10
cqo
idiv qword [rbp]
mov edx, 0xffffffff
mov r8, rax
mov rcx, rax
imul rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 8]
shl rax, 0x10
sub rax, rcx
mov ecx, r11d
sar rax, cl
mov ecx, 0x1f
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0x178]
sub ecx, dword [rax]
shl r14d, cl
shl edx, cl
mov rcx, r8
movsxd r9, edx
cmp r8, r9
movsxd rax, r14d
mov dword [rbp - 0xc], r14d
cmovle rcx, r9
cmp rax, rcx
jl 0x180063d3e
cmp r8, r9
mov eax, edx
cmovg eax, r8d
mov dword [rbp - 0xc], eax
inc r15d
mov dword [rbp - 0x78], r15d
cmp r15d, 0x20
jb 0x180063770
mov ebx, dword [rbp + 0x20]
mov edi, dword [rbp - 0x38]
mov esi, dword [rbp - 0x30]
mov r14d, dword [rbp - 0x28]
mov r15d, dword [rbp - 0x50]
mov eax, dword [rsp + 0x64]
mov edx, dword [rsp + 0x60]
mov r8, qword [rbp - 0x18]
mov r9, qword [rbp + 0x100]
mov r10, qword [rbp + 0x108]
mov rcx, r9
imul r10, qword [rbp]
imul rcx, r9
add rcx, rcx
cmp rcx, r10
jle 0x1800632f5
shl r9, 0x10
mov ecx, r11d
mov rax, r9
mov r9, qword [rbp + 8]
cqo
shl r9, 0x10
idiv qword [rbp]
mov r10, rax
mov rdx, rax
imul rdx, qword [rbp - 0x40]
mov rax, qword [rbp + 0x178]
sub r9, rdx
mov edx, 0xffffffff
sar r9, cl
mov ecx, 0x1f
sub ecx, dword [rax]
mov eax, 1
shl eax, cl
shl edx, cl
mov rcx, r10
movsxd r11, edx
cmp r10, r11
mov dword [rsp + 0x70], eax
cdqe
cmovle rcx, r11
cmp rax, rcx
jl 0x180063dfc
cmp r10, r11
mov eax, edx
cmovg eax, r10d
mov dword [rsp + 0x70], eax
lea rax, [r9 + 0x8000]
cmp rax, 0xffffffff80000000
jle 0x180063e29
cmp rax, 0x7fffffff
jle 0x180063e1d
mov eax, 0x7fffffff
mov dword [rbp - 0x78], eax
jmp 0x180063e30
lea eax, [r9 + 0x8000]
mov dword [rbp - 0x78], eax
jmp 0x180063e30
mov dword [rbp - 0x78], 0x80000000
xor r11d, r11d
mov dword [rsp + 0x50], r15d
mov edx, edi
mov r10d, r11d
mov eax, ebx
mov dword [rsp + 0x78], r11d
mov dword [rsp + 0x54], r14d
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x64], ebx
cmp dword [rbp - 0x6c], r11d
jle 0x1800643a5
mov r13d, dword [rsp + 0x70]
mov edi, r11d
mov r12d, dword [rbp - 0x78]
mov dword [rsp + 0x64], ebx
mov ebx, r11d
mov dword [rsp + 0x7c], 1
mov dword [rsp + 0x60], edx
jmp 0x180063e93
xor r11d, r11d
mov ebx, r11d
mov edi, r11d
jmp 0x180063e93
xor r11d, r11d
mov rcx, qword [rbp + 0x178]
mov r8, qword [rbp + 0x190]
mov r9d, dword [rcx]
mov rcx, qword [rbp + 0x188]
mov dword [rbp - 0x50], r9d
mov ecx, dword [rcx]
imul ecx, r10d
add ecx, ebx
cmp dword [r8], 0
je 0x180064267
lea eax, [rcx + rcx]
movsxd rcx, eax
mov rax, qword [rbp + 0x170]
movzx eax, byte [rcx + rax]
mov ecx, 0xd0
imul eax, r13d
add eax, r12d
sar eax, 0x10
mov dword [rbp + 0xb0], eax
mov eax, ecx
sub eax, 0xca
je 0x180063f28
sub eax, 3
je 0x180063f57
cmp eax, 3
jne 0x180063f42
mov r15d, dword [rbp + 0xb0]
mov ecx, r9d
test r15d, r15d
mov r9d, 1
mov edx, r15d
mov r8d, r9d
cmovs edx, r11d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x180063f4e
lea r15d, [r8 - 1]
jmp 0x180063f92
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xd0], rax
movups xmmword [rbp + 0xc0], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x180063ee7
jmp 0x180063f8c
test r15d, r15d
cmovs r15d, r11d
jmp 0x180063f92
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x50]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0xb0]
mov qword [rsp + 0x28], r11
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov r10d, dword [rsp + 0x78]
xor r11d, r11d
mov r15d, eax
mov r9d, 1
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x170]
mov r8d, dword [rax]
mov rax, qword [rbp + 0x188]
mov dword [rbp - 0x28], r8d
mov eax, dword [rax]
imul eax, r10d
add eax, ebx
add eax, eax
cdqe
movzx ecx, byte [rax + rcx + 1]
imul ecx, r13d
add ecx, r12d
sar ecx, 0x10
mov dword [rbp + 0xc0], ecx
mov ecx, 0xd0
mov eax, ecx
sub eax, 0xca
je 0x18006400f
sub eax, 3
je 0x18006403e
cmp eax, 3
jne 0x180064029
mov r14d, dword [rbp + 0xc0]
mov ecx, r8d
test r14d, r14d
mov edx, r14d
mov r8d, r9d
cmovs edx, r11d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x180064035
lea r14d, [r8 - 1]
jmp 0x18006406b
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xe0], rax
movups xmmword [rbp + 0xd0], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x180063fd4
jmp 0x18006406b
test r14d, r14d
cmovs r14d, r11d
jmp 0x18006406b
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x28]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0xc0]
mov qword [rsp + 0x28], r11
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov r14d, eax
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x170]
mov r8d, dword [rax]
mov rax, qword [rbp + 0x188]
mov dword [rbp - 0x30], r8d
mov eax, dword [rax]
imul eax, dword [rsp + 0x7c]
add eax, edi
cdqe
movzx ecx, byte [rax + rcx]
imul ecx, r13d
add ecx, r12d
sar ecx, 0x10
mov dword [rbp + 0xd0], ecx
mov ecx, 0xd0
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xca
je 0x1800640f4
sub eax, 3
je 0x180064122
cmp eax, 3
jne 0x18006410e
mov esi, dword [rbp + 0xd0]
mov ecx, r8d
test esi, esi
mov r11d, 1
mov edx, esi
mov r10d, 0
cmovs edx, r10d
mov r8d, r11d
shl r8d, cl
lea eax, [r8 - 1]
cmp eax, edx
jge 0x18006411a
lea esi, [r8 - 1]
jmp 0x180064159
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0xf0], rax
movups xmmword [rbp + 0xe0], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x1800640b0
jmp 0x180064150
test esi, esi
cmovs esi, r10d
jmp 0x180064159
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x30]
xor eax, eax
lea rcx, [rbp + 0xd0]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rax, qword [0x180112060]
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov esi, eax
mov r11d, 1
xor r10d, r10d
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x170]
mov r9d, dword [rax]
mov rax, qword [rbp + 0x188]
mov dword [rbp - 0x38], r9d
mov eax, dword [rax]
imul eax, dword [rsp + 0x7c]
add eax, edi
cdqe
movzx ecx, byte [rax + rcx + 1]
imul ecx, r13d
add ecx, r12d
sar ecx, 0x10
mov dword [rbp + 0xe0], ecx
mov ecx, 0xd0
nop word [rax + rax]
mov eax, ecx
sub eax, 0xca
je 0x1800641e2
sub eax, 3
je 0x180064235
cmp eax, 3
jne 0x1800641fc
mov edx, dword [rbp + 0xe0]
mov ecx, r9d
test edx, edx
mov r8d, edx
mov r9d, r11d
cmovs r8d, r10d
shl r9d, cl
lea eax, [r9 - 1]
cmp eax, r8d
jge 0x180064229
lea edx, [r9 - 1]
mov dword [rsp + 0x60], edx
jmp 0x18006420a
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0x100], rax
movups xmmword [rbp + 0xf0], xmm0
dec ecx
cmp ecx, 0xcd
ja 0x1800641a0
mov edx, dword [rsp + 0x60]
mov eax, dword [rsp + 0x64]
lea r9d, [rsi + 2]
mov r10d, dword [rsp + 0x78]
add r9d, edx
add r9d, r14d
add r9d, r15d
shr r9d, 2
jmp 0x180064339
test edx, edx
cmovs edx, r10d
mov dword [rsp + 0x60], edx
jmp 0x18006420a
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x38]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x28], r10
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov edx, eax
mov dword [rsp + 0x60], eax
jmp 0x18006420a
mov r8, qword [rbp + 0x170]
movsxd rcx, ecx
movzx r8d, byte [rcx + r8]
imul r8d, r13d
add r8d, r12d
sar r8d, 0x10
mov dword [rbp + 0x80], r8d
mov r8d, 0xd0
nop
mov ecx, r8d
sub ecx, 0xca
je 0x1800642cf
sub ecx, 3
je 0x1800642ff
cmp ecx, 3
jne 0x1800642e9
mov eax, dword [rbp + 0x80]
mov ecx, r9d
test eax, eax
mov r8d, eax
mov r9d, 1
cmovs r8d, r11d
shl r9d, cl
lea ecx, [r9 - 1]
cmp ecx, r8d
jge 0x1800642f7
lea eax, [r9 - 1]
jmp 0x180064332
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0xa0], rcx
movups xmmword [rbp + 0x90], xmm0
dec r8d
cmp r8d, 0xcd
ja 0x180064290
jmp 0x180064336
test eax, eax
cmovs eax, r11d
jmp 0x180064332
mov r8, qword [pe_dos_header]
lea rdx, [rbp - 0x50]
mov rax, qword [0x180112060]
lea rcx, [rbp + 0x80]
mov qword [rsp + 0x28], r11
xor r9d, r9d
mov qword [rsp + 0x20], r8
call qword [rax + 0x10]
mov edx, dword [rsp + 0x60]
mov r10d, dword [rsp + 0x78]
mov dword [rsp + 0x64], eax
mov r9d, eax
mov rcx, qword [rbp + 0x1a8]
add edi, 2
mov r8d, dword [rcx]
mov rcx, qword [rbp + 0x190]
mov ecx, dword [rcx]
sar r8d, cl
imul r8d, r10d
add r8d, ebx
inc ebx
movsxd rcx, r8d
mov r8, qword [rbp + 0x198]
mov byte [rcx + r8], r9b
mov ecx, dword [rbp - 0x6c]
cmp ebx, ecx
jl 0x180063e90
add dword [rsp + 0x7c], 2
inc r10d
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x54], r14d
mov dword [rsp + 0x50], r15d
mov dword [rsp + 0x78], r10d
cmp r10d, ecx
jl 0x180063e80
mov r12d, dword [rsp + 0x68]
mov r13d, dword [rbp - 0x80]
mov r8, qword [rbp - 0x18]
mov r10, qword [rbp + 0x180]
mov r9d, dword [rsp + 0x5c]
jmp 0x18006330f
mov edx, dword [r10]
xor ebx, ebx
mov rax, qword [rbp + 0x190]
xor r9d, r9d
mov qword [rsp + 0x40], rbx
xor r8d, r8d
mov dword [rsp + 0x38], 0x111
mov qword [rsp + 0x30], rbx
mov ecx, dword [rax]
lea rax, [rbp + 0x110]
sar edx, cl
xor ecx, ecx
mov dword [rbp - 0x6c], edx
mov dword [rbp + 0x110], edx
xor edx, edx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
call fcn.180026c10
mov edx, dword [rsp + 0x60]
mov r8, rax
mov qword [rbp - 0x18], rax
mov eax, dword [rsp + 0x64]
mov qword [rbp + 0x10], rbx
jmp 0x1800632f5