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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], r9
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rbp
push rdi
lea rbp, [r11 - 0x158]
sub rsp, 0x278
mov eax, dword [rbp + 0x188]
mov rdi, rdx
imul ecx, eax, 0x594
mov dword [rbp - 0x5c], eax
mov dword [rbp + 0x60], ecx
cmp eax, ecx
ja 0x18001bd47
mov edx, dword [rbp + 0x188]
mov r9d, dword [rbp + 0x188]
mov ecx, dword [rbp + 0x188]
mov r10d, dword [rbp + 0x188]
mov r8d, dword [rbp + 0x188]
imul eax, eax, 0x66
mov qword [r11 - 0x18], rbx
mov ebx, dword [rbp + 0x188]
mov qword [r11 - 0x20], rsi
mov esi, dword [rbp + 0x188]
mov dword [rbp + 0x5c], eax
mov eax, dword [rbp + 0x188]
mov dword [rbp + 0x48], eax
mov eax, dword [rbp + 0x188]
mov dword [rbp + 0x40], eax
mov rax, qword [rbp + 0x10]
mov qword [r11 - 0x28], r12
mov r12d, dword [rbp + 0x188]
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 0x10]
mov qword [r11 - 0x30], r13
mov r13, qword [rbp + 0x10]
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x10]
mov qword [r11 - 0x38], r14
mov r14d, dword [rbp + 0x188]
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x10]
mov qword [r11 - 0x40], r15
mov r15, qword [rbp + 0x190]
mov qword [rbp + 0x70], rax
mov rax, qword [rbp + 0x10]
mov qword [rbp + 0x10], rax
mov eax, dword [rbp + 0x188]
movaps xmmword [r11 - 0x58], xmm6
movaps xmmword [r11 - 0x68], xmm7
movss xmm7, dword [rbp + 0x188]
mov dword [rbp - 8], eax
mov eax, dword [rbp + 0x188]
movaps xmmword [r11 - 0x78], xmm8
movss xmm8, dword [rbp + 0x188]
mov dword [rbp - 0x28], eax
mov rax, qword [rbp + 0x10]
movaps xmmword [r11 - 0x88], xmm9
movss xmm9, dword [rbp + 0x188]
mov qword [rbp + 8], rax
mov eax, dword [rbp + 0x188]
movaps xmmword [r11 - 0x98], xmm10
movss xmm10, dword [rbp + 0x188]
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 0x188]
movaps xmmword [r11 - 0xa8], xmm11
movsd xmm11, qword [0x1800ed300]
mov dword [rbp + 0x28], eax
mov eax, dword [rbp + 0x188]
mov dword [rbp - 0x40], esi
mov esi, dword [rbp + 0x188]
movaps xmmword [r11 - 0xb8], xmm12
mov r11d, dword [rbp + 0x188]
movsd xmm12, qword [0x1800ed2c8]
mov dword [rbp - 0x18], eax
mov eax, dword [rbp + 0x188]
mov dword [rbp - 4], esi
mov esi, dword [rbp - 0x40]
mov dword [rbp - 0x50], eax
mov qword [rbp + 0x38], r13
mov dword [rbp - 0x30], r11d
mov dword [rbp - 0x60], edx
mov dword [rbp - 0x78], r9d
mov dword [rbp - 0x48], r14d
mov dword [rbp - 0x4c], ecx
mov dword [rbp - 0x20], r10d
mov dword [rbp - 0x2c], r8d
nop dword [rax]
nop dword [rax + rax]
cmp dword [rbp - 0x5c], 0x1bafd
ja 0x18001ccc7
je 0x18001b4b6
cmp dword [rbp - 0x5c], 0x9425
ja 0x18001b2b8
je 0x18001b2a5
mov eax, dword [rbp - 0x5c]
sub eax, 0xb9
je 0x18001b28f
sub eax, 0x1b
je 0x18001b268
cmp eax, 0x499b
mov eax, dword [rbp - 0x50]
jne 0x18001bcc0
xor ecx, ecx
mov dword [rbp - 0x4c], ecx
mov dword [rbp + 0x24], ecx
jmp 0x18001bcc0
movsxd rcx, dword [rdi + 4]
mov eax, dword [rdi + 8]
mov rdx, rcx
add rdx, qword [rbp + 0x178]
sub eax, ecx
mov rcx, qword [rbp + 0x170]
movsxd r8, eax
call fcn.180025c10
jmp 0x18001bca5
xor eax, eax
mov dword [0x180107ea4], eax
mov r14d, eax
mov dword [rbp - 0x48], eax
mov dword [rbp - 4], eax
jmp 0x18001bcbd
xor edx, edx
mov dword [rbp - 0x60], edx
mov dword [rbp - 0x18], edx
mov dword [0x180107ea8], edx
jmp 0x18001bcc0
cmp dword [rbp - 0x5c], 0xdddb
je 0x18001b453
cmp dword [rbp - 0x5c], 0x12791
je 0x18001b406
cmp dword [rbp - 0x5c], 0x17147
jne 0x18001bcc0
mov rax, qword [rbp + 0x178]
mov r8d, dword [rdi]
movss xmm9, dword [rax]
mov eax, 1
movss dword [rbp - 0x58], xmm9
mov r9d, eax
cmp r8d, eax
jle 0x18001bcb5
cmp r8d, 4
jle 0x18001b3be
mov rcx, qword [rbp + 0x178]
lea eax, [r8 - 5]
shr eax, 2
add rcx, 0xc
inc eax
mov edx, eax
lea r9d, [rax*4 + 1]
lea rax, [rax*4 + 1]
nop word [rax + rax]
movss xmm1, dword [rcx - 8]
movss xmm0, dword [rbp - 0x58]
movaps xmm2, xmm1
comiss xmm0, xmm1
maxss xmm2, xmm9
jbe 0x18001b35c
movss dword [rbp - 0x58], xmm1
movss xmm1, dword [rcx - 4]
movss xmm0, dword [rbp - 0x58]
movaps xmm3, xmm1
comiss xmm0, xmm1
maxss xmm3, xmm2
jbe 0x18001b377
movss dword [rbp - 0x58], xmm1
movss xmm1, dword [rcx]
movss xmm0, dword [rbp - 0x58]
movaps xmm2, xmm1
comiss xmm0, xmm1
maxss xmm2, xmm3
jbe 0x18001b391
movss dword [rbp - 0x58], xmm1
movss xmm1, dword [rcx + 4]
movss xmm0, dword [rbp - 0x58]
movaps xmm9, xmm1
comiss xmm0, xmm1
maxss xmm9, xmm2
jbe 0x18001b3ae
movss dword [rbp - 0x58], xmm1
add rcx, 0x10
sub rdx, 1
jne 0x18001b340
mov edx, dword [rbp - 0x60]
mov ecx, dword [rbp - 0x4c]
cmp r9d, r8d
jge 0x18001bcb5
mov rcx, qword [rbp + 0x178]
sub r8d, r9d
lea rax, [rcx + rax*4]
mov ecx, r8d
movss xmm1, dword [rax]
movaps xmm0, xmm1
maxss xmm0, xmm9
movaps xmm9, xmm0
movss xmm0, dword [rbp - 0x58]
comiss xmm0, xmm1
jbe 0x18001b3f7
movss dword [rbp - 0x58], xmm1
add rax, 4
sub rcx, 1
jne 0x18001b3d8
jmp 0x18001bcb2
mov rax, qword [rbp + 0x180]
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], 0
mov r9d, 0xb9
xor r8d, r8d
movsd qword [rbp - 0x38], xmm11
xor edx, edx
mov eax, dword [rax + 8]
mov dword [rbp - 0x80], eax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
call fcn.180032c90
mov qword [rbp - 0x38], rax
movsd xmm8, qword [rbp - 0x38]
cvtpd2ps xmm8, xmm8
jmp 0x18001bca5
mov rax, qword [rbp + 0x180]
lea rcx, [rbp - 0x80]
mov dword [0x180107eb0], 1
mov r9d, 0xb9
mov qword [rsp + 0x28], 0
xor r8d, r8d
xor edx, edx
movsd qword [rbp - 0x38], xmm12
mov eax, dword [rax + 4]
neg eax
mov dword [0x180107eac], 0x3f317218
mov dword [rbp - 0x80], eax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
call fcn.180032c90
mov qword [rbp - 0x38], rax
movsd xmm10, qword [rbp - 0x38]
cvtpd2ps xmm10, xmm10
jmp 0x18001bca5
movss xmm0, dword [rbp - 0x58]
ucomiss xmm0, xmm9
jp 0x18001b501
jne 0x18001b501
mov r13, qword [rbp + 0x160]
mov ecx, 0x5a
nop
mov eax, ecx
sub eax, 0x5a
je 0x18001b4e9
cmp eax, 1
jne 0x18001b4f1
xor eax, eax
mov dword [rbp - 8], eax
mov dword [rbp + 0x188], eax
jmp 0x18001b4f1
mov dword [r13], 0
inc ecx
cmp ecx, 0x5c
jb 0x18001b4d0
mov r13, qword [rbp + 0x38]
jmp 0x18001bc7b
mov ecx, 0x5c
mov dword [rbp - 0x80], ecx
nop dword [rax]
cmp ecx, 0x1b4
ja 0x18001c49a
je 0x18001c2f3
cmp ecx, 0x108
ja 0x18001bd51
je 0x18001b5a6
mov eax, ecx
sub eax, 0x5c
je 0x18001b59e
sub eax, 0x2b
je 0x18001b585
sub eax, 0x2b
je 0x18001b56f
cmp eax, 0x2b
jne 0x18001bc49
movsxd rcx, dword [rdi]
lea edx, [rax - 0x27]
call fcn.1800b16d4
movsxd rcx, dword [rdi]
mov edx, 4
mov qword [rbp + 8], rax
call fcn.1800b16d4
mov qword [rbp + 0x18], rax
jmp 0x18001bc3c
movsxd rcx, dword [rdi]
mov edx, 4
call fcn.1800b16d4
mov qword [rbp + 0x30], rax
jmp 0x18001bc3c
movsxd rcx, dword [rdi]
mov edx, 4
call fcn.1800b16d4
mov r13, rax
mov qword [rbp + 0x38], rax
jmp 0x18001bc3c
xor r12d, r12d
jmp 0x18001bc49
mov r8, qword [rbp + 0x180]
cmp dword [r8 + 4], 0
jne 0x18001b68f
movaps xmm0, xmm8
mulss xmm0, dword [rbp - 0x58]
call fcn.1800bbfd8
mov r10, qword [rbp + 0x168]
xor edi, edi
cvttss2si r14d, xmm0
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
movss dword [rbp - 0x58], xmm1
cmp dword [r10], edi
jle 0x18001b633
mov rsi, qword [rbp + 0x178]
mov rbx, r13
sub rsi, r13
nop dword [rax]
nop word [rax + rax]
movaps xmm0, xmm8
mulss xmm0, dword [rsi + rbx]
call fcn.1800bbfd8
mov r10, qword [rbp + 0x168]
lea rbx, [rbx + 4]
cvttss2si eax, xmm0
inc edi
sub eax, r14d
mov dword [rbx - 4], eax
cmp edi, dword [r10]
jl 0x18001b600
mov ebx, dword [rbp + 0x188]
mov esi, dword [rbp - 0x40]
mov r14d, dword [rbp - 0x48]
mov edx, dword [rbp - 0x60]
mov r9d, dword [rbp - 0x78]
mov r11d, dword [rbp - 0x30]
mov r8, qword [rbp + 0x180]
mov ecx, dword [rbp - 0x80]
mov rax, qword [rbp + 0x170]
cmp dword [rax], 3
jne 0x18001bc49
mov r14d, 8
mov esi, 7
mov qword [rbp - 0x38], r14
nop dword [rax + rax]
cmp esi, 7
ja case.default.0x18001b68d
lea r9, [0x180000000]
mov eax, esi
mov ecx, dword [r9 + rax*4 + 0x1cdec]
add rcx, r9
jmp rcx
movss xmm0, dword [rbp - 0x58]
xor edi, edi
mov r10, qword [rbp + 0x168]
mulss xmm0, xmm8
movss dword [rbp - 0x58], xmm0
cmp dword [r10], edi
jle 0x18001b64c
mov rsi, qword [rbp + 0x178]
mov rbx, r13
sub rsi, r13
nop dword [rax]
movaps xmm0, xmm8
mulss xmm0, dword [rbx + rsi]
subss xmm0, dword [rbp - 0x58]
mulss xmm0, xmm10
call fcn.1800bbfd8
mov r10, qword [rbp + 0x168]
inc edi
cvttss2si eax, xmm0
mov dword [rbx], eax
add rbx, 4
cmp edi, dword [r10]
jl 0x18001b6c0
mov ebx, dword [rbp + 0x188]
mov esi, dword [rbp - 0x40]
jmp 0x18001b637
mov r9d, dword [r10]
cmp r11d, r9d
jge 0x18001b735
movsxd rax, r11d
mov r8d, r9d
lea rdx, [rax*4]
add rdx, r13
sub r8d, r11d
nop word [rax + rax]
mov eax, dword [rbp - 0x1c]
cmp dword [rdx], eax
cmovl eax, dword [rdx]
lea rdx, [rdx + 4]
mov dword [rbp - 0x1c], eax
sub r8, 1
jne 0x18001b720
mov edx, r11d
cmp r11d, r9d
jge 0x18001b760
movsxd rax, r11d
lea rcx, [rax*4]
add rcx, r13
nop dword [rax + rax]
mov eax, dword [rbp - 0x1c]
inc edx
sub dword [rcx], eax
lea rcx, [rcx + 4]
cmp edx, dword [r10]
jl 0x18001b750
mov eax, dword [rbp - 0x1c]
cdq
xor eax, edx
sub eax, edx
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.1800bc060
movss xmm1, dword [0x180107eac]
xorps xmm7, xmm7
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
cvtsd2ss xmm7, xmm0
jmp 0x18001bc10
mov eax, dword [rbp + 0x48]
cmp eax, edx
cmovle eax, edx
mov edx, eax
mov dword [rbp - 0x60], eax
jmp case.default.0x18001b68d
movsxd rax, r11d
mov ecx, dword [r13 + rax*4]
mov dword [rbp - 0x1c], ecx
jmp case.default.0x18001b68d
mov ecx, dword [r8 + 0x40]
lea eax, [rcx - 1]
cmp eax, 1
jbe 0x18001b7ca
mov dword [r8 + 0x40], 1
jmp 0x18001b7cf
cmp ecx, 1
jne 0x18001b82d
mov edx, 0x7f
mov eax, edx
sub eax, 0x7f
je 0x18001b80c
cmp eax, 1
jne 0x18001b813
mov eax, dword [r10]
dec eax
movsxd rcx, eax
test eax, eax
jle 0x18001b802
nop dword [rax]
mov eax, dword [r13 + rcx*4 - 4]
sub dword [r13 + rcx*4], eax
dec rcx
test rcx, rcx
jg 0x18001b7f0
mov dword [r13], 0
jmp 0x18001b813
mov eax, dword [r13]
mov dword [rbp - 0xc], eax
inc edx
cmp edx, 0x81
jb 0x18001b7d4
mov r11d, dword [r8 + 0x40]
mov edx, dword [rbp - 0x60]
mov dword [rbp - 0x30], r11d
jmp case.default.0x18001b68d
cmp ecx, 2
jne 0x18001b8c4
mov r8d, 0x62
nop dword [rax]
cmp r8d, 0x62
je 0x18001b8a6
cmp r8d, 0x2df0
je 0x18001b862
cmp r8d, 0x5b7e
jne 0x18001b8ad
mov dword [r13 + 4], 0
jmp 0x18001b8ad
mov eax, dword [r13 + 4]
mov dword [rbp + 0x20], eax
mov eax, dword [r10]
dec eax
movsxd rdx, eax
cmp rdx, 1
jle 0x18001b89c
nop word [rax + rax]
mov ecx, dword [r13 + rdx*4 - 4]
mov eax, dword [r13 + rdx*4 - 8]
add ecx, ecx
sub eax, ecx
add dword [r13 + rdx*4], eax
dec rdx
cmp rdx, 1
jg 0x18001b880
mov dword [r13], 0
jmp 0x18001b8ad
mov eax, dword [r13]
mov dword [rbp - 0xc], eax
add r8d, 0x2d8e
cmp r8d, 0x88aa
jbe 0x18001b840
mov r8, qword [rbp + 0x180]
mov r11d, dword [r8 + 0x40]
mov edx, dword [rbp - 0x60]
mov dword [rbp - 0x30], r11d
jmp case.default.0x18001b68d
movaps xmm0, xmm7
call fcn.1800bb514
mov r8, qword [rbp + 0x180]
mov ecx, dword [rbp - 0xc]
cvttss2si edx, xmm0
mov dword [rbp + 0x40], ecx
inc edx
cmp dword [r8 + 0x40], 2
mov dword [rbp - 0x60], edx
jne 0x18001bc1a
mov eax, dword [rbp + 0x20]
mov r11d, dword [rbp - 0x30]
cmp eax, ecx
jle case.default.0x18001b68d
mov dword [rbp + 0x40], eax
jmp case.default.0x18001b68d
mov ecx, edx
and ecx, 0x80000007
jge 0x18001b925
dec ecx
or ecx, 0xfffffff8
inc ecx
test ecx, ecx
je case.default.0x18001b68d
mov eax, 8
sub eax, ecx
add edx, eax
mov dword [rbp - 0x60], edx
jmp case.default.0x18001b68d
test edx, edx
je case.default.0x18001b68d
mov r13d, dword [rbp - 0x60]
mov edi, 0x2b
mov r14, qword [rbp + 0x180]
nop word [rax + rax]
mov eax, edi
sub eax, 0x2a
je 0x18001ba51
cmp eax, 1
jne 0x18001bbc2
cmp dword [rbp - 0xc], 0
jl 0x18001b9ae
mov qword [rsp + 0x28], r15
lea r9, [rbp - 0xc]
lea r8, [rbp - 0x70]
mov qword [rsp + 0x20], 0
mov edx, 0xeb
mov dword [rbp - 0x68], r13d
lea rcx, [rbp - 0x68]
mov dword [rbp - 0x70], r12d
call fcn.180011360
add r12d, r13d
jmp 0x18001bbc2
mov ebx, 0x65
mov eax, ebx
sub eax, 0x65
je 0x18001ba08
sub eax, 0x4b
je 0x18001b9cc
cmp eax, 0x4b
jne 0x18001ba3d
dec r12d
add r12d, r13d
jmp 0x18001ba3d
mov eax, dword [rbp - 0xc]
lea r9, [rbp - 0x54]
cdq
mov qword [rsp + 0x28], r15
xor eax, edx
mov dword [rbp - 0x68], r12d
sub eax, edx
mov qword [rsp + 0x20], 0
mov dword [rbp - 0x54], eax
lea r8, [rbp - 0x68]
lea eax, [r13 - 1]
mov edx, 0xeb
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x70], eax
call fcn.180011360
jmp 0x18001ba3d
mov qword [rsp + 0x28], r15
lea r9, [0x180107eb0]
lea r8, [rbp - 0x68]
mov qword [rsp + 0x20], 0
mov edx, 0xeb
mov dword [rbp - 0x70], 1
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x68], r12d
call fcn.180011360
inc r12d
add ebx, 0x4b
cmp ebx, 0x146
jb 0x18001b9b3
jmp 0x18001bbc2
cmp dword [r14 + 0x40], 2
jne 0x18001bb12
cmp dword [rbp + 0x20], 0
jl 0x18001ba93
mov qword [rsp + 0x28], r15
lea r9, [rbp + 0x20]
lea r8, [rbp - 0x68]
mov qword [rsp + 0x20], 0
mov edx, 0xeb
mov dword [rbp - 0x70], r13d
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x68], r12d
call fcn.180011360
add r12d, r13d
jmp 0x18001bb12
mov ebx, 0xa2
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xa2
je 0x18001bad6
sub eax, 1
je 0x18001babb
cmp eax, 1
jne 0x18001bb08
dec r12d
add r12d, r13d
jmp 0x18001bb08
mov eax, dword [rbp + 0x20]
lea r9, [rbp - 0x54]
cdq
inc r12d
xor eax, edx
sub eax, edx
mov dword [rbp - 0x54], eax
lea eax, [r13 - 1]
mov dword [rbp - 0x70], eax
jmp 0x18001bae4
mov dword [rbp - 0x70], 1
lea r9, [0x180107eb0]
mov qword [rsp + 0x28], r15
lea r8, [rbp - 0x68]
mov edx, 0xeb
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x68], r12d
call fcn.180011360
inc ebx
cmp ebx, 0xa5
jb 0x18001baa0
cmp dword [rbp - 0x1c], 0
jl 0x18001bb49
mov qword [rsp + 0x28], r15
lea r9, [rbp - 0x1c]
lea r8, [rbp - 0x68]
mov qword [rsp + 0x20], 0
mov edx, 0xeb
mov dword [rbp - 0x70], r13d
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x68], r12d
call fcn.180011360
add r12d, r13d
jmp 0x18001bbc2
mov ebx, 0xb5
nop
mov eax, ebx
sub eax, 0xb5
je 0x18001bb86
sub eax, 1
je 0x18001bb6b
cmp eax, 1
jne 0x18001bbb8
dec r12d
add r12d, r13d
jmp 0x18001bbb8
mov eax, dword [rbp - 0x1c]
lea r9, [rbp - 0x54]
cdq
inc r12d
xor eax, edx
sub eax, edx
mov dword [rbp - 0x54], eax
lea eax, [r13 - 1]
mov dword [rbp - 0x70], eax
jmp 0x18001bb94
mov dword [rbp - 0x70], 1
lea r9, [0x180107eb0]
mov qword [rsp + 0x28], r15
lea r8, [rbp - 0x68]
mov edx, 0xeb
mov qword [rsp + 0x20], 0
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x68], r12d
call fcn.180011360
inc ebx
cmp ebx, 0xb8
jb 0x18001bb50
dec edi
cmp edi, 0x29
ja 0x18001b960
mov r14, qword [rbp - 0x38]
mov r13, qword [rbp + 0x38]
jmp 0x18001bc10
mov eax, dword [rbp + 0x40]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.1800bc060
movss xmm1, dword [0x180107eac]
xorps xmm7, xmm7
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
cvtsd2ss xmm7, xmm0
movaps xmm0, xmm7
call fcn.1800bb514
cvttss2si ecx, xmm0
inc ecx
mov dword [rbp + 0x48], ecx
mov edx, dword [rbp - 0x60]
mov r8, qword [rbp + 0x180]
mov r11d, dword [rbp - 0x30]
mov r10, qword [rbp + 0x168]
dec esi
sub r14, 1
mov qword [rbp - 0x38], r14
jne 0x18001b670
mov esi, dword [rbp - 0x40]
mov r14d, dword [rbp - 0x48]
mov ebx, dword [rbp + 0x188]
mov r9d, dword [rbp - 0x78]
mov ecx, dword [rbp - 0x80]
mov r15, qword [rbp + 0x190]
add ecx, 0x2b
mov edx, dword [rbp - 0x60]
mov r10d, dword [rbp - 0x20]
mov r11d, dword [rbp - 0x30]
mov rdi, qword [rbp + 0x168]
mov r8d, dword [rbp - 0x2c]
mov eax, dword [rbp - 0x50]
mov dword [rbp - 0x80], ecx
cmp ecx, 0x337
jb 0x18001b510
mov rbx, qword [rbp + 0x180]
lea r9, [rbp - 0x38]
mov rcx, rbx
mov dword [rbp - 0x38], 1
mov r8d, 0xeb
lea rdx, [rbp - 0x58]
call fcn.180084ac0
mov eax, dword [rbp - 8]
mov dword [rbx + 0xc], eax
mov ebx, dword [rbp + 0x188]
mov edx, dword [rbp - 0x60]
mov r10d, dword [rbp - 0x20]
mov ecx, dword [rbp - 0x4c]
mov r9d, dword [rbp - 0x78]
mov r8d, dword [rbp - 0x2c]
mov eax, dword [rbp - 0x50]
mov r11d, dword [rbp + 0x5c]
add dword [rbp - 0x5c], r11d
mov r11d, dword [rbp + 0x60]
cmp dword [rbp - 0x5c], r11d
mov r11d, dword [rbp - 0x30]
jbe 0x18001b220
movaps xmm12, xmmword [rsp + 0x1d0]
movaps xmm11, xmmword [rsp + 0x1e0]
movaps xmm10, xmmword [rsp + 0x1f0]
movaps xmm9, xmmword [rsp + 0x200]
movaps xmm8, xmmword [rsp + 0x210]
movaps xmm7, xmmword [rsp + 0x220]
movaps xmm6, xmmword [rsp + 0x230]
mov r15, qword [rsp + 0x248]
mov r14, qword [rsp + 0x250]
mov r13, qword [rsp + 0x258]
mov r12, qword [rsp + 0x260]
mov rsi, qword [rsp + 0x268]
mov rbx, qword [rsp + 0x270]
add rsp, 0x278
pop rdi
pop rbp
ret
mov eax, ecx
sub eax, 0x133
je 0x18001c003
sub eax, 0x2b
je 0x18001be4e
cmp eax, 0x2b
jne 0x18001bc49
mov ecx, 1
lea edx, [rbx - 1]
mov r8d, ecx
cmp ebx, ecx
jle 0x18001bc46
cmp edx, 8
jb 0x18001be0e
cmp dword [0x1801062a0], 2
jl 0x18001be0e
movd xmm1, dword [rbp - 0x10]
pshufd xmm1, xmm1, 0
movdqa xmm2, xmm1
and edx, 0x80000007
jge 0x18001bdb2
dec edx
or edx, 0xfffffff8
inc edx
mov eax, ebx
sub eax, edx
movsxd rdx, eax
mov rax, qword [rbp + 0x30]
nop dword [rax]
movdqu xmm0, xmmword [rax + rcx*4]
add r8d, 8
pmaxsd xmm1, xmm0
movdqu xmm0, xmmword [rax + rcx*4 + 0x10]
add rcx, 8
pmaxsd xmm2, xmm0
cmp rcx, rdx
jl 0x18001bdc0
pmaxsd xmm1, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
pmaxsd xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
pmaxsd xmm1, xmm0
movd r9d, xmm1
mov dword [rbp - 0x10], r9d
jmp 0x18001be16
mov rax, qword [rbp + 0x30]
mov r9d, dword [rbp - 0x10]
cmp r8d, ebx
jge 0x18001bc42
lea rdx, [rax + rcx*4]
mov ecx, ebx
sub ecx, r8d
nop dword [rax + rax]
mov eax, dword [rdx]
lea rdx, [rdx + 4]
cmp eax, r9d
cmovle eax, r9d
mov r9d, eax
sub rcx, 1
jne 0x18001be30
mov dword [rbp - 0x10], eax
jmp 0x18001bc42
xor r15d, r15d
test ebx, ebx
jle 0x18001bff5
mov rax, qword [rbp + 0x18]
mov r14, qword [rbp + 8]
mov rdi, rax
mov rsi, qword [rbp + 0x30]
sub r14, rax
sub rsi, rax
nop
mov ebx, 0x100
nop word [rax + rax]
cmp ebx, 0x100
je 0x18001bfb8
cmp ebx, 0x196
je 0x18001bfaa
cmp ebx, 0x22c
je 0x18001bf44
cmp ebx, 0x2c2
je 0x18001bec4
cmp ebx, 0x358
jne 0x18001bfc3
add r9d, dword [rdi]
mov dword [rbp - 0x78], r9d
jmp 0x18001bfc3
mov ecx, dword [rsi + rdi]
cmp ecx, r10d
je 0x18001bf0c
mov eax, r10d
sub eax, ecx
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
call fcn.1800bc060
movss xmm1, dword [0x180107eac]
xorps xmm7, xmm7
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
cvtsd2ss xmm7, xmm0
movaps xmm0, xmm7
call fcn.1800bb514
mov r9d, dword [rbp - 0x78]
mov r10d, dword [rbp - 0x20]
cvttss2si eax, xmm0
jmp 0x18001bf0e
xor eax, eax
xor edx, edx
mov dword [r14 + rdi], eax
cmp dword [rdi], edx
jle 0x18001bfc3
movsxd rax, r9d
lea rcx, [rax*4]
add rcx, r13
nop word [rax + rax]
mov eax, dword [rsi + rdi]
inc edx
sub dword [rcx], eax
lea rcx, [rcx + 4]
cmp edx, dword [rdi]
jl 0x18001bf30
jmp 0x18001bfc3
mov r8d, 1
cmp dword [rdi], r8d
jle 0x18001bfc3
lea eax, [r9 + 1]
movsxd rdx, eax
nop word [rax + rax]
mov ecx, 0xa9
mov eax, ecx
sub eax, 0xa8
je 0x18001bf8f
cmp eax, 1
jne 0x18001bf92
mov eax, dword [r13 + rdx*4]
cmp eax, dword [rsi + rdi]
jge 0x18001bf85
mov dword [rsi + rdi], eax
mov eax, dword [r13 + rdx*4]
cmp eax, r10d
jle 0x18001bf92
mov r10d, eax
jmp 0x18001bf92
inc rdx
dec ecx
cmp ecx, 0xa7
ja 0x18001bf65
inc r8d
mov dword [rbp - 0x20], r10d
cmp r8d, dword [rdi]
jl 0x18001bf60
jmp 0x18001bfc3
movsxd rax, r9d
mov r10d, dword [r13 + rax*4]
mov dword [rbp - 0x20], r10d
jmp 0x18001bfc3
movsxd rax, r9d
mov ecx, dword [r13 + rax*4]
mov dword [rsi + rdi], ecx
add ebx, 0x96
cmp ebx, 0x3ee
jb 0x18001be80
mov ebx, dword [rbp + 0x188]
inc r15d
add rdi, 4
cmp r15d, ebx
jl 0x18001be70
mov esi, dword [rbp - 0x40]
mov r14d, dword [rbp - 0x48]
mov ecx, dword [rbp - 0x80]
mov rax, qword [rbp + 0x30]
mov eax, dword [rax]
mov dword [rbp - 0x10], eax
jmp 0x18001bc49
cmp dword [0x180107ea8], 1
jne 0x18001c0da
mov r13, qword [rbp + 0x18]
mov r8d, 2
nop word [rax + rax]
cmp r8d, 2
je 0x18001c079
cmp r8d, 0x176
je 0x18001c05a
cmp r8d, 0x2ea
jne 0x18001c0b6
mov edx, dword [rbp - 0x54]
test edx, edx
je 0x18001c0b6
inc ebx
mov dword [rbp + 0x188], ebx
lea eax, [rbx - 1]
movsxd rcx, eax
mov dword [r13 + rcx*4], edx
mov ebx, dword [rbp + 0x188]
jmp 0x18001c0b6
mov ecx, dword [rdi]
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 dword [rbp - 0x54], ecx
jmp 0x18001c0b6
mov eax, 0x66666667
xor ecx, ecx
imul dword [rdi]
mov ebx, edx
sar ebx, 2
mov eax, ebx
shr eax, 0x1f
add ebx, eax
mov dword [rbp + 0x188], ebx
test ebx, ebx
jle 0x18001c0b6
mov rax, r13
nop dword [rax + rax]
mov dword [rax], 0xa
lea rax, [rax + 4]
mov ebx, dword [rbp + 0x188]
inc ecx
cmp ecx, ebx
jl 0x18001c0a0
add r8d, 0x174
cmp r8d, 0x45c
jbe 0x18001c020
mov r13, qword [rbp + 0x38]
xor r9d, r9d
mov dword [rbp - 0x78], r9d
jmp 0x18001bc46
mov r15, qword [rbp + 0x168]
mov edi, reloc.SHELL32.dll_SHGetNewLinkInfoA
nop word [rax + rax]
cmp edi, 0x2675
ja 0x18001c191
je 0x18001c162
cmp edi, 0xb3
je 0x18001c148
cmp edi, 0xd49
je 0x18001c137
cmp edi, 0x19df
jne 0x18001c2d5
movsxd rcx, dword [rbp + 0x2c]
mov edx, 4
call fcn.1800b16d4
mov ebx, dword [rbp + 0x188]
mov qword [rbp + 0x68], rax
jmp 0x18001c2d5
mov eax, dword [r15]
cdq
idiv dword [rbp + 0x44]
inc eax
mov dword [rbp + 0x2c], eax
jmp 0x18001c2d5
mov dword [rbp + 0x4c], 6
mov dword [rbp + 0x44], 0xa
mov dword [rbp + 0x50], 1
jmp 0x18001c2d5
movsxd rcx, dword [rbp + 0x2c]
mov edx, 4
call fcn.1800b16d4
movsxd rcx, dword [rbp + 0x2c]
mov edx, 4
mov qword [rbp + 0x70], rax
call fcn.1800b16d4
mov ebx, dword [rbp + 0x188]
mov qword [rbp + 0x10], rax
jmp 0x18001c2d5
cmp edi, 0x330b
je 0x18001c1de
cmp edi, 0x3fa1
je 0x18001c1ca
cmp edi, 0x4c37
jne 0x18001c2d5
mov rcx, qword [rbp + 0x70]
call fcn.1800b16dc
mov rcx, qword [rbp + 0x10]
call fcn.1800b16dc
mov ebx, dword [rbp + 0x188]
jmp 0x18001c2d5
mov rcx, qword [rbp + 0x68]
call fcn.1800b16dc
mov ebx, dword [rbp + 0x188]
jmp 0x18001c2d5
mov r9, qword [rbp + 0x10]
lea rax, [rbp + 0x2c]
mov qword [rsp + 0xa0], r13
lea r8, [rbp + 0x44]
mov qword [rsp + 0x98], rax
lea rdx, [rbp + 0x8c]
mov rax, qword [rbp + 0x18]
mov ecx, 0xfd
mov qword [rsp + 0x90], rax
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0x88], rax
lea rax, [rbp + 0x78]
mov qword [rsp + 0x80], rax
lea rax, [rbp + 0x90]
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x188]
mov qword [rsp + 0x70], rax
mov rax, qword [rbp + 0x70]
mov qword [rsp + 0x68], rax
lea rax, [rbp + 0x7c]
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x84]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x58]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x88]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x4c]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x54]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x54], 0
call fcn.180080920
mov ebx, dword [rbp + 0x188]
xor edx, edx
test ebx, ebx
jle 0x18001c2d5
mov rcx, qword [rbp + 0x18]
nop dword [rax]
mov eax, dword [rbp + 0x58]
inc edx
add dword [rcx], eax
lea rcx, [rcx + 4]
mov ebx, dword [rbp + 0x188]
cmp edx, ebx
jl 0x18001c2c0
add edi, 0xc96
cmp edi, 0x581a
jbe 0x18001c0f0
xor r9d, r9d
mov dword [rbp - 0x78], r9d
jmp 0x18001bc46
mov eax, dword [rbp - 0x10]
test eax, eax
je 0x18001c47f
mov r13, qword [rbp + 0x30]
inc eax
mov edi, 0x83
movd xmm6, eax
cvtdq2pd xmm6, xmm6
cmp edi, 0x83
je 0x18001c3da
cmp edi, 0x4a33
je 0x18001c3cf
cmp edi, 0x93e3
je 0x18001c3c9
cmp edi, 0xdd93
jne 0x18001c44e
mov eax, dword [rbp - 0x54]
and eax, 0x80000007
jge 0x18001c352
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x18001c44e
mov ebx, 0x8d
nop
mov eax, ebx
sub eax, 0x8d
je 0x18001c373
cmp eax, 0x76
jne 0x18001c3b9
add r12d, esi
jmp 0x18001c3b9
mov eax, dword [rbp - 0x54]
and eax, 0x80000007
jge 0x18001c384
dec eax
or eax, 0xfffffff8
inc eax
mov esi, 8
mov qword [rsp + 0x28], r15
sub esi, eax
mov dword [rbp - 0x68], r12d
lea r9, [0x180107ea4]
mov dword [rbp - 0x70], esi
lea r8, [rbp - 0x68]
mov qword [rsp + 0x20], 0
mov edx, 0xeb
lea rcx, [rbp - 0x70]
call fcn.180011360
add ebx, 0x76
cmp ebx, 0x179
jb 0x18001c360
mov dword [rbp - 0x40], esi
jmp 0x18001c448
add r12d, dword [rbp - 0x54]
jmp 0x18001c44e
mov eax, dword [rbp - 8]
imul eax, ebx
mov dword [rbp - 0x54], eax
jmp 0x18001c44e
movaps xmm0, xmm6
call fcn.1800bc060
movss xmm1, dword [0x180107eac]
xorps xmm7, xmm7
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
cvtsd2ss xmm7, xmm0
movaps xmm0, xmm7
call fcn.1800bb514
cvttss2si eax, xmm0
mov r9d, 0x3e
mov dword [rbp - 0x28], ebx
mov r8, r15
mov dword [rbp - 0x48], 0
lea rdx, [rbp - 0x48]
mov dword [rbp - 0x70], r12d
mov rcx, r13
mov dword [rbp - 8], eax
mov dword [rbp - 0x68], eax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x20], rax
call fcn.180038200
mov ebx, dword [rbp + 0x188]
add edi, 0x49b0
cmp edi, 0x126c0
jbe 0x18001c311
mov rax, qword [rbp + 8]
mov r13, qword [rbp + 0x38]
mov r9d, dword [rbp - 0x78]
mov ecx, dword [rbp - 0x80]
mov eax, dword [rax]
mov r14d, eax
mov dword [rbp - 0x28], eax
mov dword [rbp - 0x48], eax
jmp 0x18001bc49
mov rax, qword [rbp + 8]
mov dword [rbp - 8], 0
mov eax, dword [rax]
mov r14d, eax
mov dword [rbp - 0x28], eax
mov dword [rbp - 0x48], eax
jmp 0x18001bc49
cmp ecx, 0x28b
ja 0x18001cc2d
je 0x18001cac7
mov eax, ecx
sub eax, 0x1df
je 0x18001c7cd
sub eax, 0x2b
je 0x18001c6a7
sub eax, 0x2b
je 0x18001c4dc
cmp eax, 0x2b
jne 0x18001bc49
xor r9d, r9d
mov dword [rbp - 0x78], r9d
jmp 0x18001bc49
mov r8d, dword [rbp - 0x4c]
lea eax, [rbx - 1]
movsxd rcx, eax
mov rax, qword [rbp + 0x18]
mov ecx, dword [rax + rcx*4]
mov dword [rbp + 0x24], ecx
mov ecx, dword [rbp + 0x28]
cmp ecx, r8d
je 0x18001c676
mov r13, qword [rbp + 0x18]
mov eax, ecx
mov r14d, dword [rbp - 0x18]
sub eax, r8d
inc eax
mov edi, 0x23
movd xmm6, eax
cvtdq2pd xmm6, xmm6
nop dword [rax + rax]
cmp edi, 0x23
je 0x18001c619
cmp edi, 0x1531
je 0x18001c59d
cmp edi, 0x2a3f
jne 0x18001c650
mov edx, dword [rbp - 0x54]
add r12d, edx
and edx, 0x80000007
jge 0x18001c552
dec edx
or edx, 0xfffffff8
inc edx
test edx, edx
je 0x18001c650
mov esi, 8
mov qword [rsp + 0x28], r15
sub esi, edx
mov dword [rbp - 0x68], r12d
mov edx, 0xeb
mov dword [rbp - 0x70], esi
lea r9, [0x180107ea4]
mov qword [rsp + 0x20], 0
lea r8, [rbp - 0x68]
lea rcx, [rbp - 0x70]
call fcn.180011360
mov ebx, dword [rbp + 0x188]
add r12d, esi
jmp 0x18001c644
xor edx, edx
lea eax, [rbx - 1]
test eax, eax
jle 0x18001c5c6
mov rcx, r13
nop dword [rax]
sub dword [rcx], r8d
lea rcx, [rcx + 4]
mov ebx, dword [rbp + 0x188]
inc edx
lea eax, [rbx - 1]
cmp edx, eax
jl 0x18001c5b0
lea rax, [rbp - 0x68]
mov dword [rbp - 0x18], ebx
mov qword [rsp + 0x30], rax
lea rdx, [rbp - 0x40]
lea rax, [rbp - 0x70]
mov dword [rbp - 0x40], 0
mov qword [rsp + 0x28], rax
mov r9d, 0x3e
lea rax, [rbp - 0x18]
mov dword [rbp - 0x68], r14d
mov r8, r15
mov qword [rsp + 0x20], rax
mov rcx, r13
mov dword [rbp - 0x70], r12d
call fcn.180038200
mov ebx, dword [rbp + 0x188]
mov eax, r14d
imul eax, ebx
mov dword [rbp - 0x54], eax
jmp 0x18001c644
movaps xmm0, xmm6
call fcn.1800bc060
movss xmm1, dword [0x180107eac]
xorps xmm7, xmm7
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
cvtsd2ss xmm7, xmm0
movaps xmm0, xmm7
call fcn.1800bb514
cvttss2si r14d, xmm0
mov r8d, dword [rbp - 0x4c]
nop dword [rax + rax]
add edi, 0x150e
cmp edi, 0x3f2a
jbe 0x18001c520
mov r13, qword [rbp + 0x38]
mov dword [rbp - 0x18], r14d
mov r14d, dword [rbp - 0x48]
mov dword [rbp - 0x40], esi
jmp 0x18001bc42
xor edx, edx
mov dword [rbp - 0x18], edx
mov ecx, edx
test ebx, ebx
jle 0x18001bc46
nop word [rax + rax]
mov dword [rax], edx
lea rax, [rax + 4]
mov ebx, dword [rbp + 0x188]
inc ecx
cmp ecx, ebx
jl 0x18001c690
jmp 0x18001bc46
mov r11, qword [rbp + 0x18]
lea r9d, [rbx - 1]
mov ecx, 1
lea eax, [r9 - 1]
mov r8d, ecx
mov edi, dword [r11]
mov r10d, edi
mov dword [rbp + 0x28], edi
mov dword [rbp - 0x4c], edi
cmp r9d, ecx
jle 0x18001bc42
cmp eax, 8
jb 0x18001c790
cmp dword [0x1801062a0], 2
jl 0x18001c790
and eax, 0x80000007
jge 0x18001c6f4
dec eax
or eax, 0xfffffff8
inc eax
movd xmm1, edi
mov edx, r9d
pshufd xmm1, xmm1, 0
sub edx, eax
movdqa xmm3, xmm1
movdqa xmm4, xmm1
movdqa xmm2, xmm1
nop
movdqu xmm0, xmmword [r11 + rcx*4]
add r8d, 8
pmaxsd xmm1, xmm0
pminsd xmm2, xmm0
movdqu xmm0, xmmword [r11 + rcx*4 + 0x10]
add rcx, 8
pmaxsd xmm3, xmm0
pminsd xmm4, xmm0
cmp r8d, edx
jl 0x18001c710
pminsd xmm2, xmm4
pmaxsd xmm1, xmm3
movdqa xmm0, xmm2
psrldq xmm0, 8
pminsd xmm2, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 4
pminsd xmm2, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
pmaxsd xmm1, xmm0
movd r10d, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 4
pmaxsd xmm1, xmm0
mov dword [rbp - 0x4c], r10d
movd edi, xmm1
mov dword [rbp + 0x28], edi
cmp r8d, r9d
jge 0x18001bc42
sub r9d, r8d
lea rdx, [r11 + rcx*4]
mov r8d, r9d
mov ecx, dword [rdx]
lea rdx, [rdx + 4]
cmp ecx, edi
mov eax, ecx
cmovle eax, edi
cmp ecx, r10d
mov edi, eax
cmovge ecx, r10d
mov r10d, ecx
sub r8, 1
jne 0x18001c7a3
mov dword [rbp + 0x28], eax
mov dword [rbp - 0x4c], ecx
jmp 0x18001bc42
mov ecx, 1
lea eax, [rbx - 1]
mov r8d, ecx
cmp ebx, ecx
jle 0x18001c8f8
cmp eax, 8
jb 0x18001c8b2
cmp dword [0x1801062a0], 2
jl 0x18001c8b2
and eax, 0x80000007
jge 0x18001c804
dec eax
or eax, 0xfffffff8
inc eax
movd xmm2, dword [rbp - 0x28]
mov edx, ebx
movd xmm1, r14d
sub edx, eax
mov rax, qword [rbp + 8]
pshufd xmm2, xmm2, 0
pshufd xmm1, xmm1, 0
movdqa xmm3, xmm2
movdqa xmm4, xmm1
nop dword [rax + rax]
movdqu xmm0, xmmword [rax + rcx*4]
add r8d, 8
pmaxsd xmm2, xmm0
pminsd xmm1, xmm0
movdqu xmm0, xmmword [rax + rcx*4 + 0x10]
add rcx, 8
pmaxsd xmm3, xmm0
pminsd xmm4, xmm0
cmp r8d, edx
jl 0x18001c830
pminsd xmm1, xmm4
pmaxsd xmm2, xmm3
movdqa xmm0, xmm1
psrldq xmm0, 8
pminsd xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
pminsd xmm1, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 8
pmaxsd xmm2, xmm0
movd r14d, xmm1
movdqa xmm0, xmm2
psrldq xmm0, 4
pmaxsd xmm2, xmm0
mov dword [rbp - 0x48], r14d
movd r10d, xmm2
mov dword [rbp - 0x28], r10d
jmp 0x18001c8ba
mov rax, qword [rbp + 8]
mov r10d, dword [rbp - 0x28]
cmp r8d, ebx
jge 0x18001c8f8
lea rdx, [rax + rcx*4]
mov eax, ebx
sub eax, r8d
mov r8d, eax
nop dword [rax + rax]
mov ecx, dword [rdx]
lea rdx, [rdx + 4]
cmp ecx, r10d
mov eax, ecx
cmovle eax, r10d
cmp ecx, r14d
mov r10d, eax
cmovge ecx, r14d
mov r14d, ecx
sub r8, 1
jne 0x18001c8d0
mov dword [rbp - 0x28], eax
mov dword [rbp - 0x48], ecx
mov eax, dword [rbp - 0x28]
cmp eax, r14d
je 0x18001ca99
mov r13, qword [rbp + 8]
sub eax, r14d
inc eax
mov edi, pe_nt_image_headers64
movd xmm6, eax
cvtdq2pd xmm6, xmm6
nop word [rax + rax]
mov eax, edi
sub eax, 0x110
je 0x18001ca55
sub eax, 1
je 0x18001ca34
sub eax, 1
je 0x18001c9dd
cmp eax, 1
jne 0x18001ca82
mov eax, dword [rbp - 0x54]
and eax, 0x80000007
jge 0x18001c959
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x18001ca82
mov ebx, pe_nt_image_headers64
cmp ebx, 0x110
je 0x18001c9a9
cmp ebx, 0x3300
jne 0x18001c9c1
mov qword [rsp + 0x28], r15
lea r9, [0x180107ea4]
lea r8, [rbp - 0x68]
mov qword [rsp + 0x20], 0
mov edx, 0xeb
mov dword [rbp - 0x70], esi
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x68], r12d
call fcn.180011360
add r12d, esi
jmp 0x18001c9c1
mov eax, dword [rbp - 0x54]
and eax, 0x80000007
jge 0x18001c9ba
dec eax
or eax, 0xfffffff8
inc eax
mov esi, 8
sub esi, eax
add ebx, 0x31f0
cmp ebx, 0x63e0
jbe 0x18001c966
mov ebx, dword [rbp + 0x188]
mov dword [rbp - 0x40], esi
jmp 0x18001ca82
lea rax, [rbp - 0x68]
mov dword [rbp], ebx
mov ebx, dword [rbp - 4]
lea rdx, [rbp - 0x38]
mov qword [rsp + 0x30], rax
mov r9d, 0x3e
lea rax, [rbp - 0x70]
mov dword [rbp - 0x38], 0
mov qword [rsp + 0x28], rax
mov r8, r15
lea rax, [rbp]
mov dword [rbp - 0x68], ebx
mov rcx, r13
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x70], r12d
call fcn.180038200
mov eax, ebx
mov ebx, dword [rbp + 0x188]
imul eax, ebx
mov dword [rbp - 0x54], eax
add r12d, eax
jmp 0x18001ca82
xor ecx, ecx
test ebx, ebx
jle 0x18001ca82
mov rax, r13
nop dword [rax]
sub dword [rax], r14d
lea rax, [rax + 4]
mov ebx, dword [rbp + 0x188]
inc ecx
cmp ecx, ebx
jl 0x18001ca40
jmp 0x18001ca82
movaps xmm0, xmm6
call fcn.1800bc060
movss xmm1, dword [0x180107eac]
xorps xmm7, xmm7
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
cvtsd2ss xmm7, xmm0
movaps xmm0, xmm7
call fcn.1800bb514
cvttss2si eax, xmm0
mov dword [rbp - 4], eax
inc edi
cmp edi, 0x114
jb 0x18001c920
mov r13, qword [rbp + 0x38]
jmp 0x18001bc42
xor edx, edx
mov dword [rbp - 4], edx
mov ecx, edx
test ebx, ebx
jle 0x18001bc46
mov rax, qword [rbp + 8]
nop dword [rax]
mov dword [rax], edx
lea rax, [rax + 4]
mov ebx, dword [rbp + 0x188]
inc ecx
cmp ecx, ebx
jl 0x18001cab0
jmp 0x18001bc46
xor r14d, r14d
test ebx, ebx
jle 0x18001cbd4
mov rsi, qword [rbp + 8]
mov r15, qword [rbp + 0x18]
sub r15, rsi
nop dword [rax]
mov edi, 0x1b
cmp edi, 0x1b
je 0x18001cb81
cmp edi, 0xbd0
je 0x18001cb0e
cmp edi, 0x1785
jne 0x18001cba5
add r9d, r8d
mov dword [rbp - 0x78], r9d
jmp 0x18001cba5
test eax, eax
je 0x18001cba5
mov dword [rbp - 0x38], eax
lea rdx, [rbp - 0x70]
movsxd rax, r9d
mov r9d, 0x3e
mov dword [rbp - 0x68], r8d
mov r8, qword [rbp + 0x190]
mov dword [rbp - 0x70], 0
lea rcx, [rax*4]
mov dword [rbp], r12d
lea rax, [rbp - 0x38]
add rcx, r13
mov qword [rsp + 0x30], rax
lea rax, [rbp]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
call fcn.180038200
mov eax, dword [rbp - 0x50]
mov r8d, dword [rbp - 0x2c]
mov ebx, dword [rbp + 0x188]
mov r9d, dword [rbp - 0x78]
imul eax, r8d
add r12d, eax
jmp 0x18001cba2
mov ecx, dword [rbp - 0x48]
add ecx, dword [rsi]
mov eax, dword [r15 + rsi]
add eax, dword [rbp - 0x4c]
mov r8d, dword [rbp + 0x24]
mov dword [rbp - 0x50], ecx
lea ecx, [rbx - 1]
cmp r14d, ecx
cmovne r8d, eax
mov dword [rbp - 0x2c], r8d
mov eax, dword [rbp - 0x50]
add edi, 0xbb5
cmp edi, 0x231f
jbe 0x18001cae5
inc r14d
add rsi, 4
cmp r14d, ebx
jl 0x18001cae0
mov r15, qword [rbp + 0x190]
mov esi, dword [rbp - 0x40]
mov ecx, dword [rbp - 0x80]
mov eax, r12d
and eax, 0x80000007
jge 0x18001cbe5
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x18001ccbe
mov esi, 8
mov qword [rsp + 0x28], r15
sub esi, eax
mov dword [rbp - 0x38], r12d
lea r9, [0x180107ea4]
mov dword [rbp - 0x40], esi
lea r8, [rbp - 0x38]
mov dword [rbp], esi
mov edx, 0xeb
mov qword [rsp + 0x20], 0
lea rcx, [rbp]
call fcn.180011360
add r12d, esi
jmp 0x18001bc38
mov eax, ecx
sub eax, 0x2b6
je 0x18001cc93
sub eax, 0x2b
je 0x18001cc5b
cmp eax, 0x2b
jne 0x18001bc49
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x18001bc46
call fcn.1800b16dc
jmp 0x18001bc3c
mov rax, qword [rbp + 0x30]
test rax, rax
je 0x18001cc79
mov rcx, rax
call fcn.1800b16dc
mov r9d, dword [rbp - 0x78]
mov ecx, dword [rbp - 0x80]
mov ebx, dword [rbp + 0x188]
mov rax, qword [rbp + 8]
test rax, rax
je 0x18001bc49
mov rcx, rax
call fcn.1800b16dc
jmp 0x18001bc3c
mov eax, r12d
cdq
and edx, 7
add eax, edx
mov rdx, qword [rbp + 0x160]
sar eax, 3
mov dword [rdx], eax
test r13, r13
je 0x18001bc49
mov rcx, r13
call fcn.1800b16dc
jmp 0x18001bc3c
mov r14d, dword [rbp - 0x48]
jmp 0x18001bc49
cmp dword [rbp - 0x5c], 0x2e1d5
ja 0x18001cd7e
je 0x18001cd53
cmp dword [rbp - 0x5c], 0x204b3
je 0x18001cd30
cmp dword [rbp - 0x5c], 0x24e69
je 0x18001cd15
cmp dword [rbp - 0x5c], 0x2981f
jne 0x18001bcc0
mov r13, qword [rbp + 0x180]
mov dword [r13 + 0x20], 0
mov dword [r13 + 0x24], ebx
mov dword [r13 + 0x28], r14d
mov r13, qword [rbp + 0x38]
jmp 0x18001bcc0
mov qword [rbp - 0x38], rax
mov rax, qword [rbp + 0x180]
mov dword [rax + 0x1c], 0
mov rax, qword [rbp - 0x38]
jmp 0x18001bcc0
mov qword [rbp - 0x38], rax
mov rax, qword [rbp + 0x180]
mov dword [rax + 0x10], 0
mov qword [rax + 0x14], 1
mov rax, qword [rbp - 0x38]
jmp 0x18001bcc0
mov edi, dword [rbp - 4]
mov qword [rbp - 0x38], rax
mov rax, qword [rbp + 0x180]
mov dword [rax + 0x2c], edi
mov rdi, qword [rbp + 0x168]
mov dword [rax + 0x30], ecx
mov dword [rax + 0x34], 1
mov rax, qword [rbp - 0x38]
jmp 0x18001bcc0
cmp dword [rbp - 0x5c], 0x32b8b
je 0x18001cdc9
cmp dword [rbp - 0x5c], 0x37541
jne 0x18001bcc0
mov r15, qword [rbp + 0x170]
cmp dword [r15], 3
mov r15, qword [rbp + 0x190]
jne 0x18001bcc0
mov eax, edx
cdq
and edx, 7
add eax, edx
mov rdx, qword [rbp + 0x180]
sar eax, 3
mov dword [rdx + 0x44], eax
mov edx, dword [rbp - 0x60]
jmp 0x18001bcbd
mov esi, dword [rbp + 0x24]
mov qword [rbp - 0x38], rax
mov rax, qword [rbp + 0x180]
mov dword [rax + 0x38], esi
mov esi, dword [rbp - 0x18]
mov dword [rax + 0x3c], esi
mov rax, qword [rbp - 0x38]
mov esi, dword [rbp - 0x40]
jmp 0x18001bcc0