Function at 0x1800d66d0
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov byte [rax + 0x20], r9b
mov byte [rax + 0x18], r8b
mov byte [rax + 0x10], dl
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x658
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
xor edx, edx
lea r8d, [rdx + 0x60]
lea rcx, [rbp + 0xc0]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0xc0]
call fcn.1800b3670
xor edx, edx
lea r8d, [rdx + 0x60]
lea rcx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x60]
call fcn.1800b3670
mov rax, qword [0x1803a73e0]
call rax
xor esi, esi
mov byte [rbp + 3], sil
mov rcx, qword [0x1803a6c60]
mov rcx, qword [rcx + 0x190]
mov rax, qword [rcx]
cmp rax, rcx
je 0x1800d67db
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp + 0x408], xmm0
movups xmm2, xmmword [rax + 0x20]
movups xmmword [rbp + 0x418], xmm2
movups xmm0, xmmword [rax + 0x30]
movups xmmword [rbp + 0x428], xmm0
movsd xmm1, qword [rax + 0x40]
movsd qword [rbp + 0x438], xmm1
psrldq xmm2, 8
movd edx, xmm2
test dl, dl
je 0x1800d67d6
mov rdx, qword [rbp + 0x420]
shr rdx, 0x20
test dl, dl
je 0x1800d67d6
mov byte [rbp + 3], 1
jmp 0x1800d67db
mov rax, qword [rax]
jmp 0x1800d6781
mov rax, qword [0x1803a6c60]
mov rcx, qword [rax + 0x380]
mov rbx, qword [rcx]
mov qword [rbp + 0x290], rcx
xorps xmm12, xmm12
movss xmm11, dword [0x180155488]
mov qword [rbp + 0x50], rbx
cmp rbx, qword [rbp + 0x290]
je 0x1800d78f5
mov rdi, qword [rbx + 0x10]
mov qword [rbp + 0x298], rdi
mov r14, rdi
mov qword [rbp + 0x2a0], rdi
mov byte [rbp + 2], sil
mov rcx, rdi
call fcn.1800d5f3c
mov rdx, qword [rax]
add rdx, 0x14
lea rcx, [rbp + 0x510]
call fcn.180030bb4
cmp qword [rax + 0x10], rsi
seta r15b
mov byte [rbp + 2], r15b
lea rcx, [rbp + 0x510]
call fcn.180032184
jmp 0x1800d6880
mov r12b, sil
mov byte [rbp + 0x18], sil
mov rcx, rdi
call fcn.1800ccbec
mov r13, rax
mov rcx, rdi
call fcn.1800dce80
mov qword [rbp + 0x28], rax
test r15b, r15b
jne 0x1800d6a0a
cmp byte [rbp + 3], sil
je 0x1800d6a0a
mov rcx, r13
call fcn.1800a7fa8
test al, al
je 0x1800d6a0a
mov rcx, qword [0x1803a6c60]
mov rcx, qword [rcx + 0x190]
mov rax, qword [rcx]
cmp rax, rcx
je 0x1800d6a0a
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp + 0x3d0], xmm0
movups xmm2, xmmword [rax + 0x20]
movups xmmword [rbp + 0x3e0], xmm2
movups xmm0, xmmword [rax + 0x30]
movups xmmword [rbp + 0x3f0], xmm0
movsd xmm1, qword [rax + 0x40]
movsd qword [rbp + 0x400], xmm1
psrldq xmm2, 8
movd edx, xmm2
test dl, dl
je 0x1800d6b4b
mov rdx, qword [rbp + 0x3e8]
shr rdx, 0x20
test dl, dl
je 0x1800d6b4b
lea rdi, [r13 + 0x14]
mov r11, rdi
mov qword [rbp + 0x2a8], rdi
or r9d, 0xffffffff
mov r10d, esi
mov dword [rbp + 0x30], esi
or rdx, 0xffffffffffffffff
inc rdx
cmp word [rdi + rdx*2], si
jne 0x1800d6949
cmp r10d, edx
jae 0x1800d6988
movzx r8d, word [r11]
mov edx, r9d
xor r8, rdx
movzx edx, r8b
shr r9d, 8
lea r8, [0x18015d6a0]
xor r9d, dword [r8 + rdx*4]
add r11, 2
mov qword [rbp + 0x2a8], r11
inc r10d
mov dword [rbp + 0x30], r10d
jmp 0x1800d6945
not r9d
cmp r9d, dword [rbp + 0x3d0]
je 0x1800d6a03
mov rdi, qword [rbp + 0x28]
mov r11, rdi
mov qword [rbp + 0x2b0], rdi
or r9d, 0xffffffff
mov r10d, esi
mov dword [rbp + 0x34], esi
mov r8d, r9d
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [rdi + rdx], sil
jne 0x1800d69b3
cmp r10d, edx
jae 0x1800d69f3
movsx edx, byte [r11]
xor rdx, r8
movzx r8d, dl
shr r9d, 8
lea rdx, [0x18015d6a0]
xor r9d, dword [rdx + r8*4]
mov edx, 1
add r11, rdx
mov qword [rbp + 0x2b0], r11
add r10d, edx
mov dword [rbp + 0x34], r10d
jmp 0x1800d69ac
not r9d
cmp r9d, dword [rbp + 0x3d0]
jne 0x1800d6b4b
mov r12b, 1
mov byte [rbp + 0x18], r12b
movabs rax, 0x959503c82107d4b3
mov qword [rbp + 0x340], rax
movabs rax, 0x76f7cded668a5693
mov qword [rbp + 0x348], rax
movabs rax, 0x951b466d41684ef1
mov qword [rbp + 0x350], rax
movabs rax, 0x77e4232684026ce
mov qword [rbp + 0x358], rax
movabs rax, 0xff2d789a2357f519
mov qword [rbp + 0x360], rax
movabs rax, 0xb9ac03733af4b706
mov qword [rbp + 0x368], rax
movabs rax, 0x95e703bc2166d4c3
mov qword [rbp + 0x380], rax
movabs rax, 0x7692cd8566e656fc
mov qword [rbp + 0x388], rax
movabs rax, 0x9574460e41014e9d
mov qword [rbp + 0x390], rax
movabs rax, 0x70c4257683426be
mov qword [rbp + 0x398], rax
movabs rax, 0xff4878e82327f537
mov qword [rbp + 0x3a0], rax
movabs rax, 0xb9ac03113a95b760
mov qword [rbp + 0x3a8], rax
vmovdqu ymm0, ymmword [rbp + 0x340]
vpxor ymm0, ymm0, ymmword [rbp + 0x380]
vmovdqa ymmword [rbp + 0x340], ymm0
vmovdqa xmm1, xmmword [rbp + 0x360]
vpxor xmm1, xmm1, xmmword [rbp + 0x3a0]
vmovdqa xmmword [rbp + 0x360], xmm1
lea rcx, [r13 + 0x14]
lea rdx, [rbp + 0x340]
vzeroupper
call sub.VCRUNTIME140.dll_wcsstr
movzx r13d, sil
test rax, rax
mov eax, 1
cmovne r13d, eax
mov dword [rbp + 0x28], r13d
test r15b, r15b
jne 0x1800d6b40
test r12b, r12b
jne 0x1800d6b45
test r13b, r13b
je 0x1800d78ed
test r12b, r12b
je 0x1800d6b53
mov byte [rbp + 1], sil
jmp 0x1800d6b66
mov rax, qword [rax]
jmp 0x1800d68d2
mov rcx, r14
call fcn.1800e20a8
mov rcx, qword [rax]
call fcn.1800df4dc
mov byte [rbp + 1], al
test r12b, r12b
je 0x1800d6b70
mov r15b, sil
jmp 0x1800d6b7b
mov rcx, r14
call fcn.1800cb484
mov r15b, al
test r13b, r13b
jne 0x1800d6c64
test r12b, r12b
jne 0x1800d6cd9
mov rdi, qword [0x1803a6c60]
mov rcx, r14
call fcn.1800e507c
mov r9, rax
mov r8, qword [rdi + 0x150]
mov rcx, qword [r8 + 8]
mov qword [rbp + 0x130], rcx
mov dword [rbp + 0x138], esi
mov rdx, r8
mov qword [rbp + 0x140], rdx
cmp byte [rcx + 0x19], sil
jne 0x1800d6bfb
mov qword [rbp + 0x130], rcx
mov eax, dword [r9]
cmp dword [rcx + 0x20], eax
jae 0x1800d6be2
mov dword [rbp + 0x138], esi
mov rcx, qword [rcx + 0x10]
jmp 0x1800d6bf9
mov dword [rbp + 0x138], 1
mov rdx, rcx
mov qword [rbp + 0x140], rcx
mov rcx, qword [rcx]
jmp 0x1800d6bc1
cmp byte [rdx + 0x19], sil
jne 0x1800d6c09
mov eax, dword [rdx + 0x20]
cmp dword [r9], eax
jae 0x1800d6c0c
mov rdx, r8
mov qword [rbp + 0x3c8], rdx
mov rcx, qword [0x1803a6c60]
mov rax, qword [rcx + 0x150]
mov qword [rbp + 0x3c0], rax
cmp rdx, rax
je 0x1800d6c64
cmp byte [rcx + 0x491], sil
jne 0x1800d6c64
lea rdi, [rcx + 0x160]
mov rcx, r14
call fcn.1800e507c
mov r8, rax
lea rdx, [rbp + 0x530]
mov rcx, rdi
call fcn.18002f6bc
mov rcx, qword [rax]
cmp byte [rcx + 0x20], sil
jne 0x1800d78ed
test r12b, r12b
jne 0x1800d6cd9
mov rcx, r14
call fcn.1800df2c0
test al, al
je 0x1800d78ed
test r12b, r12b
jne 0x1800d6cd9
cmp byte [rbp + 1], sil
je 0x1800d6c98
mov rax, qword [0x1803a6c60]
cmp byte [rax + 0x5e4], sil
je 0x1800d78ed
test r12b, r12b
jne 0x1800d6cd9
mov rcx, r14
call fcn.1800e20a8
mov rcx, qword [rax]
call fcn.1800df284
cmp byte [rax], sil
jne 0x1800d78ed
test r12b, r12b
jne 0x1800d6cd9
test r15b, r15b
je 0x1800d6cd4
mov rax, qword [0x1803a6c60]
cmp byte [rax + 0x5e2], sil
je 0x1800d78ed
test r12b, r12b
je 0x1800d6cef
test r13b, r13b
jne 0x1800d6cef
mov rcx, r14
call fcn.1800e4c9c
lea rdx, [rbp + 0x4b8]
jmp 0x1800d6d46
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rdx, qword [rax]
test rdx, rdx
je 0x1800d6d3c
movabs rax, 0xffffffff00000001
add rax, rdx
movabs rcx, 0xfffffff00000001
cmp rax, rcx
ja 0x1800d6d3c
mov al, r13b
neg al
sbb rcx, rcx
and rcx, 0xffffffffffffff18
mov rax, qword [rcx + rdx + 0x1a0]
jmp 0x1800d6d3f
mov rax, rsi
lea rdx, [rbp + 0x4ac]
mov rcx, rax
call fcn.1800e232c
movsd xmm6, qword [rax]
movsd qword [rbp + 8], xmm6
mov r15d, dword [rax + 8]
mov dword [rbp + 0x10], r15d
test r12b, r12b
je 0x1800d6d7b
movss xmm0, dword [rbp + 0xc]
addss xmm0, dword [0x18015547c]
movss dword [rbp + 0xc], xmm0
movsd xmm6, qword [rbp + 8]
and dword [rbp + 0x150], 0
and dword [rbp + 0x154], 0
and dword [rbp + 0x158], 0
mov word [rbp + 0x15c], 2
and dword [rbp + 0x160], 0
and dword [rbp + 0x164], 0
and dword [rbp + 0x168], 0
mov byte [rbp + 0x16c], sil
and dword [rbp + 0x170], 0
and dword [rbp + 0x174], 0
and dword [rbp + 0x178], 0
mov word [rbp + 0x17c], 5
and dword [rbp + 0x180], 0
and dword [rbp + 0x184], 0
and dword [rbp + 0x188], 0
mov byte [rbp + 0x18c], sil
and dword [rbp + 0x190], 0
and dword [rbp + 0x194], 0
and dword [rbp + 0x198], 0
mov word [rbp + 0x19c], 0x19
and dword [rbp + 0x1a0], 0
and dword [rbp + 0x1a4], 0
and dword [rbp + 0x1a8], 0
mov byte [rbp + 0x1ac], sil
and dword [rbp + 0x1b0], 0
and dword [rbp + 0x1b4], 0
and dword [rbp + 0x1b8], 0
mov word [rbp + 0x1bc], 0x1a
and dword [rbp + 0x1c0], 0
and dword [rbp + 0x1c4], 0
and dword [rbp + 0x1c8], 0
mov byte [rbp + 0x1cc], sil
and dword [rbp + 0x1d0], 0
and dword [rbp + 0x1d4], 0
and dword [rbp + 0x1d8], 0
mov word [rbp + 0x1dc], 0x30
and dword [rbp + 0x1e0], 0
and dword [rbp + 0x1e4], 0
and dword [rbp + 0x1e8], 0
mov byte [rbp + 0x1ec], sil
and dword [rbp + 0x1f0], 0
and dword [rbp + 0x1f4], 0
and dword [rbp + 0x1f8], 0
mov word [rbp + 0x1fc], 1
and dword [rbp + 0x200], 0
and dword [rbp + 0x204], 0
and dword [rbp + 0x208], 0
mov byte [rbp + 0x20c], sil
and dword [rbp + 0x210], 0
and dword [rbp + 0x214], 0
and dword [rbp + 0x218], 0
mov word [rbp + 0x21c], 0xf
and dword [rbp + 0x220], 0
and dword [rbp + 0x224], 0
and dword [rbp + 0x228], 0
mov byte [rbp + 0x22c], sil
and dword [rbp + 0x230], 0
and dword [rbp + 0x234], 0
and dword [rbp + 0x238], 0
mov word [rbp + 0x23c], 0xe
and dword [rbp + 0x240], 0
and dword [rbp + 0x244], 0
and dword [rbp + 0x248], 0
mov byte [rbp + 0x24c], sil
and dword [rbp + 0x250], 0
and dword [rbp + 0x254], 0
and dword [rbp + 0x258], 0
mov word [rbp + 0x25c], 0x38
and dword [rbp + 0x260], 0
and dword [rbp + 0x264], 0
and dword [rbp + 0x268], 0
mov byte [rbp + 0x26c], sil
and dword [rbp + 0x270], 0
and dword [rbp + 0x274], 0
and dword [rbp + 0x278], 0
mov word [rbp + 0x27c], 0x39
and dword [rbp + 0x280], 0
and dword [rbp + 0x284], 0
and dword [rbp + 0x288], 0
mov byte [rbp + 0x28c], sil
test r13b, r13b
jne 0x1800d73e1
test r12b, r12b
jne 0x1800d73e1
mov rcx, qword [0x1803a6c60]
mov edx, dword [rcx + 0x494]
test edx, edx
je 0x1800d7367
sub edx, 1
je 0x1800d7308
sub edx, 1
je 0x1800d72bf
sub edx, 1
je 0x1800d7276
sub edx, 1
je 0x1800d722a
sub edx, 1
je 0x1800d709f
cmp edx, 1
jne 0x1800d73e1
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rdi, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
movabs rax, 0xcccccccccccccccd
mul rcx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
sub rcx, rax
shl rcx, 5
movsx edx, byte [rbp + rcx + 0x15c]
test rdi, rdi
je 0x1800d7090
movabs rax, 0xffffffff00000001
add rax, rdi
movabs rcx, 0xfffffff00000001
cmp rax, rcx
ja 0x1800d7090
lea eax, [rdx*8 + 0x20]
movsxd rcx, eax
mov rcx, qword [rcx + rdi]
jmp 0x1800d7093
mov rcx, rsi
lea rdx, [rbp + 0x4c4]
jmp 0x1800d734f
movss xmm7, dword [0x180155578]
movss dword [rbp + 0x38], xmm7
movdqa xmm0, xmmword [0x18015f870]
movdqu xmmword [rbp + 0x300], xmm0
movdqa xmm1, xmmword [0x18015f860]
movdqu xmmword [rbp + 0x310], xmm1
movdqa xmm0, xmmword [0x18015f880]
movdqu xmmword [rbp + 0x320], xmm0
mov dword [rbp + 0x330], 0x38
lea rax, [rbp + 0x300]
mov qword [rbp + 0x2f0], rax
lea rax, [rbp + 0x334]
mov qword [rbp + 0x2f8], rax
movaps xmm0, xmmword [rbp + 0x2f0]
movdqa xmmword [rbp + 0x4e0], xmm0
lea rdi, [rbp + 0x300]
movdqa xmmword [rbp + 0x4f0], xmm0
lea rax, [rbp + 0x334]
mov qword [rbp + 0x2b8], rdi
cmp rdi, rax
je 0x1800d73dd
mov r13d, dword [rdi]
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rdx, qword [rax]
test rdx, rdx
je 0x1800d717f
movabs rax, 0xffffffff00000001
add rax, rdx
movabs rcx, 0xfffffff00000001
cmp rax, rcx
ja 0x1800d717f
lea eax, [r13*8 + 0x20]
movsxd rcx, eax
mov rcx, qword [rcx + rdx]
jmp 0x1800d7182
mov rcx, rsi
lea rdx, [rbp + 0x4d0]
call fcn.1800e232c
movsd xmm0, qword [rax]
movsd qword [rbp + 0x2d0], xmm0
mov eax, dword [rax + 8]
mov dword [rbp + 0x2d8], eax
lea rcx, [rbp + 0x2d0]
call fcn.1800c6c48
comiss xmm7, xmm0
jbe 0x1800d7221
movaps xmm7, xmm0
movss dword [rbp + 0x38], xmm0
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rdx, qword [rax]
test rdx, rdx
je 0x1800d7201
movabs rax, 0xffffffff00000001
add rax, rdx
movabs rcx, 0xfffffff00000001
cmp rax, rcx
ja 0x1800d7201
lea eax, [r13*8 + 0x20]
movsxd rcx, eax
mov rcx, qword [rcx + rdx]
jmp 0x1800d7204
mov rcx, rsi
lea rdx, [rbp + 0x440]
call fcn.1800e232c
movsd xmm6, qword [rax]
movsd qword [rbp + 8], xmm6
mov r15d, dword [rax + 8]
mov dword [rbp + 0x10], r15d
add rdi, 4
jmp 0x1800d7120
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rcx, qword [rax]
test rcx, rcx
je 0x1800d7267
movabs rax, 0xffffffff00000001
add rax, rcx
movabs rdx, 0xfffffff00000001
cmp rax, rdx
ja 0x1800d7267
mov rcx, qword [rcx + 0x90]
jmp 0x1800d726a
mov rcx, rsi
lea rdx, [rbp + 0x44c]
jmp 0x1800d734f
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rcx, qword [rax]
test rcx, rcx
je 0x1800d72b0
movabs rax, 0xffffffff00000001
add rax, rcx
movabs rdx, 0xfffffff00000001
cmp rax, rdx
ja 0x1800d72b0
mov rcx, qword [rcx + 0x28]
jmp 0x1800d72b3
mov rcx, rsi
lea rdx, [rbp + 0x458]
jmp 0x1800d734f
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rcx, qword [rax]
test rcx, rcx
je 0x1800d72fc
movabs rax, 0xffffffff00000001
add rax, rcx
movabs rdx, 0xfffffff00000001
cmp rax, rdx
ja 0x1800d72fc
mov rcx, qword [rcx + 0xc8]
jmp 0x1800d72ff
mov rcx, rsi
lea rdx, [rbp + 0x464]
jmp 0x1800d734f
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rcx, qword [rax]
test rcx, rcx
je 0x1800d7345
movabs rax, 0xffffffff00000001
add rax, rcx
movabs rdx, 0xfffffff00000001
cmp rax, rdx
ja 0x1800d7345
mov rcx, qword [rcx + 0xd0]
jmp 0x1800d7348
mov rcx, rsi
lea rdx, [rbp + 0x470]
call fcn.1800e232c
movsd xmm6, qword [rax]
movsd qword [rbp + 8], xmm6
mov r15d, dword [rax + 8]
mov dword [rbp + 0x10], r15d
jmp 0x1800d73e1
mov rcx, r14
call fcn.1800e0664
mov rcx, qword [rax]
call fcn.1800d7d68
mov rcx, qword [rax]
test rcx, rcx
je 0x1800d73a4
movabs rax, 0xffffffff00000001
add rax, rcx
movabs rdx, 0xfffffff00000001
cmp rax, rdx
ja 0x1800d73a4
mov rcx, qword [rcx + 0x198]
jmp 0x1800d73a7
mov rcx, rsi
lea rdx, [rbp + 0x47c]
call fcn.1800e232c
movsd xmm0, qword [rax]
movsd qword [rbp + 8], xmm0
mov r15d, dword [rax + 8]
mov dword [rbp + 0x10], r15d
movss xmm0, dword [rbp + 0xc]
addss xmm0, dword [0x180155468]
movss dword [rbp + 0xc], xmm0
movsd xmm6, qword [rbp + 8]
jmp 0x1800d73e1
mov r13d, dword [rbp + 0x28]
movsd qword [rbp + 0x2e0], xmm6
mov dword [rbp + 0x2e8], r15d
lea rcx, [rbp + 0x2e0]
call fcn.1800c6c48
movaps xmm10, xmm0
mov rcx, r14
call fcn.1800e4c9c
lea rdx, [rbp + 0x120]
mov rcx, rax
call fcn.1800e232c
test r13b, r13b
jne 0x1800d745b
test r12b, r12b
jne 0x1800d745b
mov rdi, qword [0x1803a6c60]
mov rcx, r14
call fcn.1800e507c
mov edx, dword [rax]
mov qword [rbp + 0x2c0], rdx
lea r8, [rbp + 0x2c0]
lea rdx, [rbp + 0x500]
lea rcx, [rdi + 0x200]
call fcn.1800ac820
mov rcx, qword [rax]
mov al, byte [rcx + 0x28]
jmp 0x1800d745d
mov al, 1
mov byte [rbp], al
cmp byte [rsp + 0x6a8], sil
je 0x1800d7472
test al, al
je 0x1800d78ed
mov rax, qword [0x1803a6c60]
comiss xmm10, dword [rax + 0x4a0]
ja 0x1800d78ed
movaps xmm7, xmm12
movss dword [rbp + 0x3c], xmm7
movaps xmm8, xmm12
movss dword [rbp + 0x40], xmm12
test r13b, r13b
je 0x1800d7583
mov rcx, r14
call fcn.1800e537c
mov r13, qword [rax]
mov rcx, rsi
mov rdx, rsi
movabs rax, 0xffffffff00000001
lea rdi, [rax + r13]
mov qword [rbp + 0x48], rcx
movabs r8, 0xfffffff00000001
test r13, r13
je 0x1800d74e4
lea rdi, [rax + r13]
cmp rdi, r8
ja 0x1800d74e4
mov eax, dword [r13 + 0x18]
jmp 0x1800d74e6
mov eax, esi
cmp rdx, rax
jae 0x1800d757f
test r13, r13
je 0x1800d7509
cmp rdi, r8
ja 0x1800d7509
lea eax, [rcx*8 + 0x20]
movsxd rcx, eax
mov rcx, qword [rcx + r13]
jmp 0x1800d750c
mov rcx, rsi
call fcn.1800d7a40
addss xmm7, dword [rax]
movss dword [rbp + 0x3c], xmm7
test r13, r13
je 0x1800d7542
movabs rax, 0xfffffff00000001
cmp rdi, rax
ja 0x1800d7542
mov rax, qword [rbp + 0x48]
lea eax, [rax*8 + 0x20]
movsxd rcx, eax
mov rcx, qword [rcx + r13]
jmp 0x1800d7556
mov rcx, rsi
test r13, r13
movabs rax, 0xffffffff00000001
cmove rdi, rax
call fcn.1800d7a80
addss xmm8, dword [rax]
movss dword [rbp + 0x40], xmm8
mov rcx, qword [rbp + 0x48]
inc rcx
mov rdx, rcx
movabs rax, 0xffffffff00000001
jmp 0x1800d74c2
mov r13d, dword [rbp + 0x28]
movss xmm1, dword [rbp + 0x120]
subss xmm1, dword [rbp + 8]
movss xmm2, dword [rbp + 0x124]
subss xmm2, dword [rbp + 0xc]
movss xmm0, dword [rbp + 0x128]
subss xmm0, dword [rbp + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
movaps xmm4, xmm2
mulss xmm4, dword [0x18015547c]
movss dword [rbp + 0x1c], xmm2
mov ecx, dword [rbp + 0x1c]
mov dword [rbp + 0x20], ecx
sar ecx, 1
mov eax, 0x5f3759df
sub eax, ecx
mov dword [rbp + 0x20], eax
movss xmm1, dword [rbp + 0x20]
movss dword [rbp + 0x1c], xmm1
movaps xmm0, xmm1
mulss xmm0, xmm4
mulss xmm0, xmm1
movss xmm3, dword [0x180155490]
movaps xmm2, xmm3
subss xmm2, xmm0
mulss xmm2, xmm1
movss dword [rbp + 0x1c], xmm2
movaps xmm0, xmm2
mulss xmm0, xmm4
mulss xmm0, xmm2
subss xmm3, xmm0
mulss xmm3, xmm2
movss dword [rbp + 0x1c], xmm3
movaps xmm9, xmm11
divss xmm9, xmm3
test r13b, r13b
jne 0x1800d7678
test r12b, r12b
jne 0x1800d7646
mov rcx, r14
call fcn.1800ddb98
movss xmm7, dword [rax]
jmp 0x1800d764a
movaps xmm7, xmm11
test r13b, r13b
jne 0x1800d7678
test r12b, r12b
jne 0x1800d7674
cmp byte [rbp + 1], sil
je 0x1800d7669
mov rcx, r14
call fcn.1800dfed0
movss xmm8, dword [rax]
jmp 0x1800d7678
movss xmm8, dword [0x180155504]
jmp 0x1800d7678
movaps xmm8, xmm11
divss xmm7, xmm8
cmp qword [rbp + 0xd0], rsi
je 0x1800d76a5
cmp qword [rbp + 0x70], rsi
je 0x1800d7698
lea rdx, [rbp + 0x488]
jmp 0x1800d773a
cmp qword [rbp + 0xd0], rsi
jne 0x1800d772d
mov byte [rbp + 0xec], r12b
mov qword [rbp + 0xd0], r14
lea rdx, [rbp + 0x494]
mov rcx, r14
call fcn.1800c9acc
movsd xmm0, qword [rax]
movsd qword [rbp + 0xf4], xmm0
mov eax, dword [rax + 8]
mov dword [rbp + 0xfc], eax
movss dword [rbp + 0xd8], xmm9
mov al, byte [rbp]
mov byte [rbp + 0xee], al
mov rcx, r14
call fcn.1800e0b30
mov rcx, qword [rax]
call fcn.1800ca338
mov ecx, dword [rax]
mov dword [rbp + 0xe8], ecx
movsd qword [rbp + 0xc0], xmm6
mov dword [rbp + 0xc8], r15d
movss dword [rbp + 0xe4], xmm7
movss dword [rbp + 0xdc], xmm10
mov byte [rbp + 0xed], r13b
jmp 0x1800d78ed
cmp qword [rbp + 0x70], rsi
jne 0x1800d77a7
lea rdx, [rbp + 0x4a0]
mov byte [rbp + 0x8c], r12b
mov qword [rbp + 0x70], r14
mov rcx, r14
call fcn.1800c9acc
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp + 0x9c], eax
movss dword [rbp + 0x78], xmm9
mov al, byte [rbp]
movsd qword [rbp + 0x94], xmm0
mov byte [rbp + 0x8e], al
mov rcx, r14
call fcn.1800e0b30
mov rcx, qword [rax]
call fcn.1800ca338
mov ecx, dword [rax]
mov dword [rbp + 0x88], ecx
movss dword [rbp + 0x84], xmm7
movss dword [rbp + 0x7c], xmm10
mov byte [rbp + 0x8d], r13b
mov dword [rbp + 0x68], r15d
movsd qword [rbp + 0x60], xmm6
mov rcx, qword [0x1803a6c60]
cmp byte [rcx + 0x4e2], sil
je 0x1800d7856
add rcx, 0xa48
call fcn.180035bb8
test al, al
jne 0x1800d7856
mov rax, qword [0x1803a6c60]
mov ecx, dword [rax + 0x1c]
cmp ecx, dword [rbp + 0x88]
jne 0x1800d7814
lea rdx, [rbp + 0x60]
mov rcx, qword [rsp + 0x6a0]
call fcn.1800b3530
lea rcx, [rbp + 0x60]
call fcn.1800b4794
lea rcx, [rbp + 0xc0]
call fcn.1800b4794
mov rax, qword [rsp + 0x6a0]
jmp 0x1800d79c7
cmp ecx, dword [rbp + 0xe8]
jne 0x1800d78d8
lea rdx, [rbp + 0xc0]
mov rcx, qword [rsp + 0x6a0]
call fcn.1800b3530
lea rcx, [rbp + 0x60]
call fcn.1800b4794
lea rcx, [rbp + 0xc0]
call fcn.1800b4794
mov rax, qword [rsp + 0x6a0]
jmp 0x1800d79c7
mov rcx, qword [0x1803a6c60]
cmp byte [rcx + 0x4e2], sil
je 0x1800d7876
add rcx, 0xa48
call fcn.180035bb8
test al, al
jne 0x1800d7886
mov rax, qword [0x1803a6c60]
cmp byte [rax + 0x4e2], sil
jne 0x1800d78d8
cmp byte [rsp + 0x6b0], sil
je 0x1800d789e
movss xmm0, dword [rbp + 0xd8]
comiss xmm0, dword [rbp + 0x78]
ja 0x1800d78c7
cmp byte [rsp + 0x6b8], sil
je 0x1800d78b9
movss xmm0, dword [rbp + 0x84]
comiss xmm0, dword [rbp + 0xe4]
ja 0x1800d78c7
movss xmm0, dword [rbp + 0xdc]
comiss xmm0, dword [rbp + 0x7c]
jbe 0x1800d78d8
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0xc0]
call fcn.1800b49c0
nop
jmp 0x1800d78ed
mov rbx, qword [rbx]
jmp 0x1800d6800
mov rax, qword [0x1803a6c60]
movss xmm0, dword [rbp + 0xdc]
comiss xmm0, dword [rax + 0x4a0]
jbe 0x1800d7946
xor edx, edx
lea r8d, [rdx + 0x60]
lea rcx, [rbp + 0x540]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x540]
call fcn.1800b3670
mov rdx, rax
lea rcx, [rbp + 0xc0]
call fcn.1800b48e4
lea rcx, [rbp + 0x540]
call fcn.1800b4794
mov rcx, qword [0x1803a6c60]
movsd xmm0, qword [rbp + 0xc0]
movsd qword [rcx + 4], xmm0
mov eax, dword [rbp + 0xc8]
mov dword [rcx + 0xc], eax
mov rcx, qword [0x1803a6c60]
mov eax, dword [rbp + 0xe8]
mov dword [rcx + 0x1c], eax
lea rdx, [rbp + 0xc0]
mov rcx, qword [rsp + 0x6a0]
call fcn.1800b3530
lea rcx, [rbp + 0x60]
call fcn.1800b4794
lea rcx, [rbp + 0xc0]
call fcn.1800b4794
mov rax, qword [rsp + 0x6a0]
jmp 0x1800d79c7
lea r11, [rsp + 0x658]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret