Function at 0x180035ad0
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
push rbp
lea rbp, [rsp - 0x220]
sub rsp, 0x320
call fcn.18001b230
test rax, rax
je 0x180036d34
mov qword [rsp + 0x318], rbx
call fcn.1800174b0
mov rbx, rax
test rax, rax
je 0x180036d2c
mov rcx, qword gs:[0x58]
mov qword [rsp + 0x308], rdi
mov edi, dword [0x1803a3130]
mov r10d, 4
mov rcx, qword [rcx + rdi*8]
mov ecx, dword [r10 + rcx]
cmp dword [0x1803da35c], ecx
jg 0x180036d3d
jmp 0x180035b41
mov r10d, 4
mov rax, qword [0x1803db150]
mov rax, qword [rbx + rax]
mov qword [rbp + 0xc0], rax
test rax, rax
je 0x180036d24
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x2f0], r14
xor r14d, r14d
mov dword [rbp + 0x238], r14d
cmp dword [rax + 0x10], r14d
jle 0x180036d1c
mov r9, qword gs:[0x58]
xor edx, edx
mov qword [rsp + 0x310], rsi
mov r8, rdi
movaps xmmword [rsp + 0x2a0], xmm9
xorps xmm9, xmm9
movaps xmmword [rsp + 0x290], xmm10
movss xmm10, dword [0x1801b9494]
movaps xmmword [rsp + 0x280], xmm11
movss xmm11, dword [0x1801b8f9c]
movaps xmmword [rsp + 0x270], xmm12
movss xmm12, dword [0x1801b93d0]
mov qword [rsp + 0x300], r12
mov qword [rsp + 0x2f8], r13
mov qword [rsp + 0x2e8], r15
movaps xmmword [rsp + 0x2d0], xmm6
movaps xmmword [rsp + 0x2c0], xmm7
mov qword [rbp + 0xc8], rdi
movabs rdi, 0x7fffffff0000
movaps xmmword [rsp + 0x2b0], xmm8
mov qword [rbp + 0x248], rdx
nop
mov rax, qword [rax + 0x18]
mov rsi, qword [rax + rdx*8 + 0x20]
mov qword [rbp - 0x30], rsi
test rsi, rsi
je 0x180036c80
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x180036c80
mov r13, qword [rax + 0x30]
test r13, r13
je 0x180036c80
lea rcx, [r13 + 0x60]
cmp rcx, 0x40000
jbe 0x180036c80
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180036c80
mov rbx, qword [rcx]
test rbx, rbx
je 0x180036c80
mov r12, qword [r9 + r8*8]
mov r15d, r10d
mov eax, dword [r15 + r12]
cmp dword [0x1803da770], eax
jg 0x180036d78
jmp 0x180035c9a
mov rdx, qword [rbp + 0x248]
mov rax, qword [0x1803da3b8]
cmp byte [rax + rsi], 0
jne 0x180036c80
mov eax, dword [r15 + r12]
cmp dword [0x1803da864], eax
jg 0x180036db3
mov r8, rsi
call fcn.180062dd0
test rax, rax
je 0x180036c79
lea rdx, str.Local
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
jne 0x180036c79
call fcn.18001b230
mov rcx, rax
call fcn.18001ae20
mov rdx, rax
add rax, 0xb0
cmp rax, 0x40000
jbe 0x180035d3e
lea rcx, [rax + 8]
cmp rcx, rdi
jae 0x180035d3e
mov rax, qword [rax]
cmp rax, 0x40000
jbe 0x180035d3e
lea rcx, [rax + 8]
cmp rcx, rdi
jae 0x180035d3e
mov rbx, qword [rax]
add rbx, 0x10
cmp rbx, 0x40000
jbe 0x180035d3e
lea rax, [rbx + 8]
cmp rax, rdi
jae 0x180035d3e
mov rbx, qword [rbx]
jmp 0x180035d40
xor ebx, ebx
test rdx, rdx
je 0x180035d74
test rbx, rbx
je 0x180035d74
lea rdx, str.BaseMelee
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x180035d70
lea rdx, str.Jackhammer
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x180035d74
mov bl, 1
jmp 0x180035d76
xor bl, bl
mov rcx, rsi
call fcn.180017800
test al, al
je 0x180036c79
cmp byte [0x1803a353d], 0
je 0x180036881
test bl, bl
je 0x180036881
call fcn.18001b230
lea rcx, [rax + 0xb8]
cmp rcx, 0x40000
jbe 0x180035e2e
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180035e2e
mov rcx, qword [rcx]
add rcx, 0x48
cmp rcx, 0x40000
jbe 0x180035e2e
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180035e2e
mov rcx, qword [rcx]
add rcx, 0x198
cmp rcx, 0x40000
jbe 0x180035e2e
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180035e2e
mov rbx, qword [rcx]
test rbx, rbx
je 0x180035e2e
mov eax, dword [r15 + r12]
cmp dword [0x1803da4a8], eax
jg 0x180036df1
mov rdx, qword [0x1803da330]
lea r8, [rbp + 0x30]
mov r9, rbx
mov qword [rbp + 0x30], 0
lea rcx, [rbp - 0x3c]
mov dword [rbp + 0x38], 0
call fcn.180062d10
jmp 0x180035e3d
mov qword [rbp - 0x3c], 0
mov dword [rbp - 0x34], 0
movsd xmm0, qword [rbp - 0x3c]
lea rcx, [rsi + 0xb8]
mov edi, dword [rbp - 0x34]
movsd qword [rbp + 0xd0], xmm0
cmp rcx, 0x40000
jbe 0x180035f00
lea rax, [rcx + 8]
movabs rdx, 0x7fffffff0000
cmp rax, rdx
jae 0x180035f00
mov rcx, qword [rcx]
add rcx, 0x48
cmp rcx, 0x40000
jbe 0x180035f00
lea rax, [rcx + 8]
cmp rax, rdx
jae 0x180035f00
mov rcx, qword [rcx]
add rcx, 0x198
cmp rcx, 0x40000
jbe 0x180035f00
lea rax, [rcx + 8]
cmp rax, rdx
jae 0x180035f00
mov rbx, qword [rcx]
test rbx, rbx
je 0x180035f00
mov eax, dword [r15 + r12]
cmp dword [0x1803da4a8], eax
jg 0x180036e2f
mov rdx, qword [0x1803da330]
lea r8, [rbp + 0x40]
mov r9, rbx
mov qword [rbp + 0x40], 0
lea rcx, [rsp + 0x3c]
mov dword [rbp + 0x48], 0
call fcn.180062d10
movss xmm2, dword [rsp + 0x44]
movss xmm1, dword [rsp + 0x40]
movss xmm3, dword [rsp + 0x3c]
jmp 0x180035f1e
movaps xmm3, xmm9
movaps xmm1, xmm9
movaps xmm2, xmm9
movss dword [rsp + 0x3c], xmm3
movss dword [rsp + 0x40], xmm1
movss dword [rsp + 0x44], xmm2
subss xmm1, dword [rbp + 0xd4]
subss xmm3, dword [rbp + 0xd0]
movd xmm0, edi
subss xmm2, xmm0
mulss xmm1, xmm1
mulss xmm3, xmm3
mulss xmm2, xmm2
addss xmm1, xmm3
addss xmm1, xmm2
comiss xmm1, xmm10
ja 0x180036877
call fcn.18001b230
mov rcx, rax
call fcn.180063550
mov r14, rax
call fcn.18001b230
mov rcx, rax
call fcn.18001ae20
mov rcx, rax
call fcn.1800197d0
test r14, r14
je 0x180036870
mov r8, qword [r14]
test r8, r8
je 0x180036870
mov r8, qword [r8 + 0x10]
mov edx, 0xffffffff
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [r8 + rax], 0
jne 0x180035fa0
test eax, eax
je 0x180036870
mov r9d, eax
lea rsi, [0x1801985d0]
nop dword [rax]
movsx ecx, byte [r8]
lea r8, [r8 + 1]
mov eax, edx
shr edx, 8
xor rcx, rax
movzx eax, cl
xor edx, dword [rsi + rax*4]
sub r9, 1
jne 0x180035fc0
mov rsi, qword [rbp - 0x30]
not edx
cmp edx, 0x479168ed
jne 0x180036870
mov rbx, qword [0x1803a34d0]
test rbx, rbx
je 0x180036870
mov eax, dword [r15 + r12]
cmp dword [0x1803dae40], eax
jg 0x180036e6d
mov rax, qword [0x1803da938]
movss xmm0, dword [rbx + rax]
comiss xmm0, xmm9
jbe 0x180036870
mov rcx, qword [0x1803a34d0]
movabs rdi, 0x7fffffff0000
add rcx, 0xb8
cmp rcx, 0x40000
jbe 0x1800360c4
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x1800360c4
mov rcx, qword [rcx]
add rcx, 0x48
cmp rcx, 0x40000
jbe 0x1800360c4
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x1800360c4
mov rcx, qword [rcx]
add rcx, 0x198
cmp rcx, 0x40000
jbe 0x1800360c4
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x1800360c4
mov rbx, qword [rcx]
test rbx, rbx
je 0x1800360c4
mov eax, dword [r15 + r12]
cmp dword [0x1803da4a8], eax
jg 0x180036ea8
mov rdx, qword [0x1803da330]
lea r8, [rbp + 0x50]
mov r9, rbx
mov qword [rbp + 0x50], 0
lea rcx, [rsp + 0x48]
mov dword [rbp + 0x58], 0
call fcn.180062d10
jmp 0x1800360d5
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x50], 0
call fcn.18001b230
mov rbx, rax
test rax, rax
je 0x180036121
mov ecx, dword [r15 + r12]
cmp dword [0x1803da594], ecx
jg 0x180036ee6
mov rax, qword [0x1803dadb0]
mov rbx, qword [rax + rbx]
test rbx, rbx
je 0x180036121
mov eax, dword [r15 + r12]
cmp dword [0x1803dab78], eax
jg 0x180036f21
mov rdx, rbx
lea rcx, [rbp - 0x78]
call qword [0x1803dabd0]
jmp 0x180036130
mov qword [rbp - 0x78], 0
mov dword [rbp - 0x70], 0
movsd xmm0, qword [rbp - 0x78]
mov eax, dword [r15 + r12]
cmp dword [0x1803da61c], eax
mov ebx, dword [rbp - 0x70]
movsd qword [rbp + 0xe0], xmm0
jg 0x180036f5f
movss xmm2, dword [rsp + 0x50]
movss xmm1, dword [rsp + 0x4c]
subss xmm1, dword [rbp + 0xe4]
mov rax, qword [0x1803db220]
movd xmm0, ebx
subss xmm2, xmm0
movss xmm0, dword [rsp + 0x48]
subss xmm0, dword [rbp + 0xe0]
movss xmm3, dword [rax + r14]
mulss xmm1, xmm1
addss xmm3, xmm12
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm0, xmm1
addss xmm0, xmm2
sqrtss xmm0, xmm0
comiss xmm0, xmm3
ja 0x18003694d
mov eax, dword [r15 + r12]
cmp dword [0x1803dab7c], eax
jg 0x180036f9a
mov rax, qword [0x1803da120]
movss xmm8, dword [rax + r14]
mov eax, dword [r15 + r12]
cmp dword [0x1803da050], eax
jg 0x180036fd5
mov rax, qword [0x1803db0d8]
mov rcx, r14
call rax
test al, al
jne 0x18003694d
call fcn.18001b230
mov rbx, rax
test rax, rax
je 0x18003623b
mov ecx, dword [r15 + r12]
cmp dword [0x1803da594], ecx
jg 0x180037013
mov rax, qword [0x1803dadb0]
mov rbx, qword [rbx + rax]
test rbx, rbx
je 0x18003623b
mov eax, dword [r15 + r12]
cmp dword [0x1803dab78], eax
jg 0x18003704e
mov rdx, rbx
lea rcx, [rsp + 0x58]
call qword [0x1803dabd0]
jmp 0x18003624c
mov qword [rsp + 0x58], 0
mov dword [rsp + 0x60], 0
mov rcx, qword [0x1803a34d0]
add rcx, 0xb8
cmp rcx, 0x40000
jbe 0x1800362e2
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x1800362e2
mov rcx, qword [rcx]
add rcx, 0x48
cmp rcx, 0x40000
jbe 0x1800362e2
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x1800362e2
mov rcx, qword [rcx]
add rcx, 0x198
cmp rcx, 0x40000
jbe 0x1800362e2
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x1800362e2
mov rbx, qword [rcx]
test rbx, rbx
je 0x1800362e2
mov eax, dword [r15 + r12]
cmp dword [0x1803da4a8], eax
jg 0x18003708c
mov rdx, qword [0x1803da330]
lea r8, [rbp + 0x60]
mov r9, rbx
mov qword [rbp + 0x60], 0
lea rcx, [rsp + 0x68]
mov dword [rbp + 0x68], 0
call fcn.180062d10
jmp 0x1800362f3
mov qword [rsp + 0x68], 0
mov dword [rsp + 0x70], 0
call fcn.18001b740
mov rbx, qword [0x1803a34d0]
xor edi, edi
mov qword [rbp + 0xa8], rdi
mov rsi, rax
test rax, rax
jne 0x180036320
mov qword [rbp + 0xa8], rbx
lea rcx, [rbp + 0x230]
jmp 0x18003635c
mov eax, dword [r15 + r12]
cmp dword [0x1803da148], eax
jg 0x1800370ca
mov rax, qword [0x1803db190]
mov byte [rbp + 0x230], dil
mov qword [rax + rsi], rbx
mov eax, dword [r15 + r12]
cmp dword [0x1803daa74], eax
jg 0x180037105
mov rcx, qword [0x1803dae38]
add rcx, rsi
mov byte [rcx], 1
movabs rax, 0x2a5ed13e60afe662
mov qword [rbp + 0x240], rax
movabs rcx, 0x92131bbc72f20a72
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x240], rcx
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x88], rax
movabs rax, 0x2a5ed14d13ce8a05
mov qword [rbp + 0x240], rax
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x240], rcx
lea rcx, [rbp + 0x80]
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x148], rax
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x80], xmm0
call fcn.180010ea0
mov qword [rbp + 0xb0], rdi
mov rbx, rax
test rsi, rsi
jne 0x18003640c
lea rcx, [rbp + 0xb0]
jmp 0x180036426
mov eax, dword [r15 + r12]
cmp dword [0x1803da4dc], eax
jg 0x180037140
mov rcx, qword [0x1803dadd8]
add rcx, rsi
mov eax, dword [r15 + r12]
mov qword [rcx], rbx
cmp dword [0x1803da61c], eax
jg 0x18003717b
mov rax, qword [0x1803db220]
mov dword [rbp + 0x240], edi
movss xmm6, dword [rax + r14]
test rsi, rsi
jne 0x18003646a
movss dword [rbp + 0x240], xmm6
call fcn.18001a8c0
mov rbx, rax
lea rcx, [rbp + 0xb8]
jmp 0x1800364af
mov eax, dword [r15 + r12]
cmp dword [0x1803da948], eax
jg 0x1800371b6
mov rax, qword [0x1803da390]
mov qword [rbp + 0xb8], rdi
movss dword [rax + rsi], xmm6
call fcn.18001a8c0
mov rbx, rax
mov eax, dword [r15 + r12]
cmp dword [0x1803da038], eax
jg 0x1800371f1
mov rcx, qword [0x1803dae68]
add rcx, rsi
mov qword [rcx], rbx
movss xmm1, dword [rsp + 0x58]
movss xmm7, dword [rsp + 0x60]
movss xmm6, dword [rsp + 0x5c]
movss xmm0, dword [rsp + 0x68]
movss xmm3, dword [rsp + 0x70]
subss xmm0, xmm1
movss xmm2, dword [rsp + 0x6c]
subss xmm3, xmm7
movss dword [rbp + 0x124], xmm6
subss xmm2, xmm6
movss dword [rbp + 0x128], xmm7
movss dword [rbp + 0x120], xmm1
mov qword [rbp + 0x94], rdi
addss xmm0, xmm1
mov dword [rbp + 0x90], edi
addss xmm7, xmm3
mov qword [rbp + 0xa0], rdi
addss xmm6, xmm2
mov dword [rbp + 0x9c], edi
movss dword [rbp + 0x12c], xmm0
test rsi, rsi
jne 0x180036536
lea rax, [rbp + 0x90]
jmp 0x180036550
mov eax, dword [r15 + r12]
cmp dword [0x1803da2f8], eax
jg 0x18003722c
mov rax, qword [0x1803da6a0]
add rax, rsi
movups xmm0, xmmword [rbp + 0x120]
movaps xmm1, xmm6
unpcklps xmm1, xmm7
movups xmmword [rax], xmm0
movsd qword [rax + 0x10], xmm1
movsd qword [rbp + 0x130], xmm1
call fcn.18001a8c0
mov rdx, qword [0x1803a34d0]
mov rdi, rax
add rdx, 0xb8
cmp rdx, 0x40000
jbe 0x180036618
lea rcx, [rdx + 8]
movabs r8, 0x7fffffff0000
cmp rcx, r8
jae 0x180036618
mov rcx, qword [rdx]
add rcx, 0x48
cmp rcx, 0x40000
jbe 0x180036618
lea rax, [rcx + 8]
cmp rax, r8
jae 0x180036618
mov rcx, qword [rcx]
add rcx, 0x198
cmp rcx, 0x40000
jbe 0x180036618
lea rax, [rcx + 8]
cmp rax, r8
jae 0x180036618
mov rbx, qword [rcx]
test rbx, rbx
je 0x180036618
mov eax, dword [r15 + r12]
cmp dword [0x1803da4a8], eax
jg 0x180037267
mov rdx, qword [0x1803da330]
lea r8, [rbp + 0x70]
mov r9, rbx
mov qword [rbp + 0x70], 0
lea rcx, [rbp - 0x6c]
mov dword [rbp + 0x78], 0
call fcn.180062d10
jmp 0x180036627
mov qword [rbp - 0x6c], 0
mov dword [rbp - 0x64], 0
movsd xmm6, qword [rbp - 0x6c]
mov ebx, dword [rbp - 0x64]
test rdi, rdi
jne 0x18003663d
mov qword [rbp - 0x60], rdi
mov dword [rbp - 0x58], edi
jmp 0x18003668d
mov eax, dword [r15 + r12]
cmp dword [0x1803da5f0], eax
jg 0x1800372a5
mov rdx, qword [0x1803dab50]
lea rax, [rbp + 0xf0]
mov r9, rdi
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x20]
movsd qword [rbp + 0xf0], xmm6
lea rcx, [rbp - 0x60]
mov dword [rbp + 0xf8], ebx
mov qword [rbp - 0x20], 0
mov dword [rbp - 0x18], 0
call fcn.180062d50
movsd xmm6, qword [rbp - 0x60]
mov ebx, dword [rbp - 0x58]
mov qword [rbp - 0xc], 0
mov dword [rbp - 0x10], 0
test rsi, rsi
jne 0x1800366af
lea rax, [rbp - 0x10]
jmp 0x1800366c9
mov eax, dword [r15 + r12]
cmp dword [0x1803da740], eax
jg 0x1800372e3
mov rax, qword [0x1803da180]
add rax, rsi
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
call fcn.18001a8c0
mov rdx, qword [0x1803a34d0]
mov rdi, rax
add rdx, 0xb8
cmp rdx, 0x40000
jbe 0x18003677b
lea rcx, [rdx + 8]
movabs r8, 0x7fffffff0000
cmp rcx, r8
jae 0x18003677b
mov rcx, qword [rdx]
add rcx, 0x48
cmp rcx, 0x40000
jbe 0x18003677b
lea rax, [rcx + 8]
cmp rax, r8
jae 0x18003677b
mov rcx, qword [rcx]
add rcx, 0x198
cmp rcx, 0x40000
jbe 0x18003677b
lea rax, [rcx + 8]
cmp rax, r8
jae 0x18003677b
mov rbx, qword [rcx]
test rbx, rbx
je 0x18003677b
mov eax, dword [r15 + r12]
cmp dword [0x1803da4a8], eax
jg 0x18003731e
mov rdx, qword [0x1803da330]
lea r8, [rbp]
mov r9, rbx
mov qword [rbp], 0
lea rcx, [rbp - 0x54]
mov dword [rbp + 8], 0
call fcn.180062d10
jmp 0x18003678a
mov qword [rbp - 0x54], 0
mov dword [rbp - 0x4c], 0
movsd xmm6, qword [rbp - 0x54]
mov ebx, dword [rbp - 0x4c]
test rdi, rdi
jne 0x1800367a0
mov qword [rbp - 0x48], rdi
mov dword [rbp - 0x40], edi
jmp 0x1800367f0
mov eax, dword [r15 + r12]
cmp dword [0x1803da5f0], eax
jg 0x18003735c
mov rdx, qword [0x1803dab50]
lea rax, [rbp + 0x100]
mov r9, rdi
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x10]
movsd qword [rbp + 0x100], xmm6
lea rcx, [rbp - 0x48]
mov dword [rbp + 0x108], ebx
mov qword [rbp + 0x10], 0
mov dword [rbp + 0x18], 0
call fcn.180062d50
movsd xmm6, qword [rbp - 0x48]
mov ebx, dword [rbp - 0x40]
mov qword [rbp + 0x24], 0
mov dword [rbp + 0x20], 0
test rsi, rsi
jne 0x180036812
lea rax, [rbp + 0x20]
jmp 0x18003682c
mov eax, dword [r15 + r12]
cmp dword [0x1803daed0], eax
jg 0x18003739a
mov rax, qword [0x1803da538]
add rax, rsi
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
mov eax, dword [r15 + r12]
cmp dword [0x1803da618], eax
jg 0x1800373d5
mov rdx, rsi
mov rcx, r14
call qword [0x1803da268]
mov eax, dword [r15 + r12]
cmp dword [0x1803da2ac], eax
jg 0x180037413
movaps xmm1, xmm8
mov rcx, r14
call qword [0x1803da750]
mov rsi, qword [rbp - 0x30]
mov r14d, dword [rbp + 0x238]
movabs rdi, 0x7fffffff0000
cmp byte [0x1803a3637], 0
je 0x180036c79
lea rcx, [r13 + 0x30]
cmp rcx, 0x40000
jbe 0x18003696e
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x18003696e
mov rdi, qword [rcx]
test rdi, rdi
je 0x180036970
lea rcx, [rdi + 8]
cmp rcx, 0x40000
jbe 0x180036970
lea rax, [rcx + 8]
movabs rdx, 0x7fffffff0000
cmp rax, rdx
jae 0x180036970
mov rcx, qword [rcx]
test rcx, rcx
je 0x180036970
add rcx, 0x38
cmp rcx, 0x40000
jbe 0x180036970
lea rax, [rcx + 8]
cmp rax, rdx
jae 0x180036970
mov rcx, qword [rcx]
test rcx, rcx
je 0x180036970
add rcx, 0x90
cmp rcx, 0x40000
jbe 0x180036959
lea rax, [rcx + 0xc]
cmp rax, rdx
jae 0x180036959
movsd xmm0, qword [rcx]
movss xmm8, dword [rcx + 8]
movaps xmm6, xmm0
movsd qword [rbp + 0x150], xmm0
movss xmm7, dword [rbp + 0x150]
shufps xmm6, xmm6, 0x55
movss dword [rsp + 0x38], xmm8
jmp 0x180036983
mov r14d, dword [rbp + 0x238]
jmp 0x180036881
movaps xmm8, xmm9
movaps xmm6, xmm9
movss dword [rsp + 0x38], xmm8
movaps xmm7, xmm9
jmp 0x180036983
xor edi, edi
movss dword [rsp + 0x38], xmm9
movaps xmm7, xmm9
movaps xmm6, xmm9
movaps xmm8, xmm9
movss dword [rsp + 0x34], xmm6
movss dword [rsp + 0x30], xmm7
call fcn.18001b230
mov rbx, rax
test rax, rax
jne 0x1800369a7
mov qword [rsp + 0x7c], rax
mov dword [rsp + 0x78], eax
jmp 0x1800369e9
mov eax, dword [r15 + r12]
cmp dword [0x1803da444], eax
jg 0x180037451
movaps xmm0, xmm7
movss dword [rbp + 0x118], xmm8
unpcklps xmm0, xmm6
lea r8, [rbp + 0x110]
mov rdx, rbx
movsd qword [rsp + 0x30], xmm0
lea rcx, [rsp + 0x78]
movsd qword [rbp + 0x110], xmm0
call qword [0x1803daab0]
cmp byte [0x1803a3637], 0
je 0x180036c6f
cmp qword [0x1803a34d0], 0
je 0x180036c6f
mov eax, dword [r15 + r12]
cmp dword [0x1803da690], eax
jg 0x18003748f
mov rax, qword [0x1803dada0]
mov ecx, dword [rax + rsi]
shr ecx, 6
test cl, 1
je 0x180036c6f
test rdi, rdi
je 0x180036ab7
lea rcx, [rdi + 8]
cmp rcx, 0x40000
jbe 0x180036ab7
lea rax, [rcx + 8]
movabs rdx, 0x7fffffff0000
cmp rax, rdx
jae 0x180036ab7
mov rcx, qword [rcx]
test rcx, rcx
je 0x180036ab7
add rcx, 0x38
cmp rcx, 0x40000
jbe 0x180036ab7
lea rax, [rcx + 8]
cmp rax, rdx
jae 0x180036ab7
mov rcx, qword [rcx]
test rcx, rcx
je 0x180036ab7
add rcx, 0x90
cmp rcx, 0x40000
jbe 0x180036ab7
lea rax, [rcx + 0xc]
cmp rax, rdx
jae 0x180036ab7
movsd xmm1, qword [rcx]
movss xmm4, dword [rcx + 8]
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movaps xmm3, xmm0
movsd qword [rbp + 0x160], xmm1
movss xmm0, dword [rbp + 0x160]
jmp 0x180036ac3
movaps xmm4, xmm9
movaps xmm3, xmm9
movaps xmm0, xmm9
movss xmm1, dword [rsp + 0x78]
movss xmm2, dword [rsp + 0x7c]
subss xmm1, xmm0
movss xmm0, dword [rbp - 0x80]
subss xmm2, xmm3
subss xmm0, xmm4
mulss xmm1, xmm1
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
comiss xmm2, xmm10
jae 0x180036c6f
call fcn.18001b230
movabs rdi, 0x7fffffff0000
lea rcx, [rax + 0x6b0]
cmp rcx, 0x40000
jbe 0x180036c79
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180036c79
mov rcx, qword [rcx]
add rcx, 0x20
cmp rcx, 0x40000
jbe 0x180036c79
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180036c79
mov rcx, qword [rcx]
add rcx, 0x10
cmp rcx, 0x40000
jbe 0x180036c79
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180036c79
mov rcx, qword [rcx]
test rcx, rcx
je 0x180036c79
add rcx, 0x14
cmp rcx, 0x40000
jbe 0x180036b96
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x180036b96
mov eax, dword [rcx]
jmp 0x180036b98
xor eax, eax
shr eax, 8
test al, 1
je 0x180036c79
mov rdi, qword [0x1803a34d0]
call fcn.18001b230
mov ecx, dword [rax + 0x938]
test ecx, ecx
je 0x180036bc1
cmp dword [rdi + 0x938], ecx
je 0x180036bce
cmp byte [0x1803a3642], 0
jne 0x180036c6f
call fcn.18001b230
mov rbx, rax
test rax, rax
jne 0x180036be1
movaps xmm1, xmm9
jmp 0x180036bfd
mov eax, dword [r15 + r12]
cmp dword [0x1803da408], eax
jg 0x1800374ca
mov rax, qword [0x1803da220]
movss xmm1, dword [rbx + rax]
movss xmm0, dword [0x1803a34b0]
addss xmm0, xmm11
comiss xmm1, xmm0
jbe 0x180036c6f
call fcn.18001b230
mov rbx, rax
test rax, rax
je 0x180036c38
mov ecx, dword [r15 + r12]
cmp dword [0x1803dab40], ecx
jg 0x180037505
mov rdx, rdi
mov rcx, rbx
call qword [0x1803da868]
call fcn.18001b230
mov rbx, rax
test rax, rax
jne 0x180036c4b
movaps xmm0, xmm9
jmp 0x180036c67
mov eax, dword [r15 + r12]
cmp dword [0x1803da408], eax
jg 0x180037543
mov rax, qword [0x1803da220]
movss xmm0, dword [rbx + rax]
movss dword [0x1803a34b0], xmm0
movabs rdi, 0x7fffffff0000
mov rdx, qword [rbp + 0x248]
mov rax, qword [rbp + 0xc0]
inc r14d
mov r8, qword [rbp + 0xc8]
inc rdx
mov r9, qword gs:[0x58]
mov dword [rbp + 0x238], r14d
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x248], rdx
mov r10d, 4
cmp r14d, dword [rax + 0x10]
jl 0x180035c20
movaps xmm12, xmmword [rsp + 0x270]
movaps xmm11, xmmword [rsp + 0x280]
movaps xmm10, xmmword [rsp + 0x290]
movaps xmm9, xmmword [rsp + 0x2a0]
movaps xmm8, xmmword [rsp + 0x2b0]
movaps xmm7, xmmword [rsp + 0x2c0]
movaps xmm6, xmmword [rsp + 0x2d0]
mov r15, qword [rsp + 0x2e8]
mov r13, qword [rsp + 0x2f8]
mov r12, qword [rsp + 0x300]
mov rsi, qword [rsp + 0x310]
mov r14, qword [rsp + 0x2f0]
mov rdi, qword [rsp + 0x308]
mov rbx, qword [rsp + 0x318]
add rsp, 0x320
pop rbp
ret
lea rcx, [0x1803da35c]
call fcn.1801144a8
cmp dword [0x1803da35c], 0xffffffff
jne 0x180035b3b
mov ecx, 0xae00109b
call fcn.180015350
lea rcx, [0x1803da35c]
mov qword [0x1803db150], rax
call fcn.18011443c
jmp 0x180035b3b
lea rcx, [0x1803da770]
call fcn.1801144a8
cmp dword [0x1803da770], 0xffffffff
jne 0x180035c93
mov ecx, 0x33f7a6a3
call fcn.180015350
lea rcx, [0x1803da770]
mov qword [0x1803da3b8], rax
call fcn.18011443c
jmp 0x180035c93
lea rcx, [0x1803da864]
call fcn.1801144a8
cmp dword [0x1803da864], 0xffffffff
jne 0x180035cbb
mov ecx, 0x8bb6774c
call fcn.1800124d0
lea rcx, [0x1803da864]
mov rdx, qword [rax]
mov qword [0x1803da820], rdx
call fcn.18011443c
jmp 0x180035cbb
lea rcx, [0x1803da4a8]
call fcn.1801144a8
cmp dword [0x1803da4a8], 0xffffffff
jne 0x180035e06
mov ecx, 0x56e64b7d
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da330], rcx
lea rcx, [0x1803da4a8]
call fcn.18011443c
jmp 0x180035e06
lea rcx, [0x1803da4a8]
call fcn.1801144a8
cmp dword [0x1803da4a8], 0xffffffff
jne 0x180035ec5
mov ecx, 0x56e64b7d
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da330], rcx
lea rcx, [0x1803da4a8]
call fcn.18011443c
jmp 0x180035ec5
lea rcx, [0x1803dae40]
call fcn.1801144a8
cmp dword [0x1803dae40], 0xffffffff
jne 0x18003600e
mov ecx, 0x43f29029
call fcn.180015350
lea rcx, [0x1803dae40]
mov qword [0x1803da938], rax
call fcn.18011443c
jmp 0x18003600e
lea rcx, [0x1803da4a8]
call fcn.1801144a8
cmp dword [0x1803da4a8], 0xffffffff
jne 0x18003609b
mov ecx, 0x56e64b7d
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da330], rcx
lea rcx, [0x1803da4a8]
call fcn.18011443c
jmp 0x18003609b
lea rcx, [0x1803da594]
call fcn.1801144a8
cmp dword [0x1803da594], 0xffffffff
jne 0x1800360f2
mov ecx, 0x6d5c7dd2
call fcn.180015350
lea rcx, [0x1803da594]
mov qword [0x1803dadb0], rax
call fcn.18011443c
jmp 0x1800360f2
lea rcx, [0x1803dab78]
call fcn.1801144a8
cmp dword [0x1803dab78], 0xffffffff
jne 0x180036112
mov ecx, 0xf3daab4b
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803dabd0], rcx
lea rcx, [0x1803dab78]
call fcn.18011443c
jmp 0x180036112
lea rcx, [0x1803da61c]
call fcn.1801144a8
cmp dword [0x1803da61c], 0xffffffff
jne 0x180036150
mov ecx, 0xf717cec3
call fcn.180015350
lea rcx, [0x1803da61c]
mov qword [0x1803db220], rax
call fcn.18011443c
jmp 0x180036150
lea rcx, [0x1803dab7c]
call fcn.1801144a8
cmp dword [0x1803dab7c], 0xffffffff
jne 0x1800361bd
mov ecx, 0xe79a0df3
call fcn.180015350
lea rcx, [0x1803dab7c]
mov qword [0x1803da120], rax
call fcn.18011443c
jmp 0x1800361bd
lea rcx, [0x1803da050]
call fcn.1801144a8
cmp dword [0x1803da050], 0xffffffff
jne 0x1800361da
mov ecx, 0xaa26e158
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803db0d8], rcx
lea rcx, [0x1803da050]
call fcn.18011443c
jmp 0x1800361da
lea rcx, [0x1803da594]
call fcn.1801144a8
cmp dword [0x1803da594], 0xffffffff
jne 0x18003620b
mov ecx, 0x6d5c7dd2
call fcn.180015350
lea rcx, [0x1803da594]
mov qword [0x1803dadb0], rax
call fcn.18011443c
jmp 0x18003620b
lea rcx, [0x1803dab78]
call fcn.1801144a8
cmp dword [0x1803dab78], 0xffffffff
jne 0x18003622b
mov ecx, 0xf3daab4b
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803dabd0], rcx
lea rcx, [0x1803dab78]
call fcn.18011443c
jmp 0x18003622b
lea rcx, [0x1803da4a8]
call fcn.1801144a8
cmp dword [0x1803da4a8], 0xffffffff
jne 0x1800362b9
mov ecx, 0x56e64b7d
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da330], rcx
lea rcx, [0x1803da4a8]
call fcn.18011443c
jmp 0x1800362b9
lea rcx, [0x1803da148]
call fcn.1801144a8
cmp dword [0x1803da148], 0xffffffff
jne 0x180036330
mov ecx, 0xb52f21cc
call fcn.180015350
lea rcx, [0x1803da148]
mov qword [0x1803db190], rax
call fcn.18011443c
jmp 0x180036330
lea rcx, [0x1803daa74]
call fcn.1801144a8
cmp dword [0x1803daa74], 0xffffffff
jne 0x180036352
mov ecx, 0xa5bffe2c
call fcn.180015350
lea rcx, [0x1803daa74]
mov qword [0x1803dae38], rax
call fcn.18011443c
jmp 0x180036352
lea rcx, [0x1803da4dc]
call fcn.1801144a8
cmp dword [0x1803da4dc], 0xffffffff
jne 0x18003641c
mov ecx, 0x8b0d22a8
call fcn.180015350
lea rcx, [0x1803da4dc]
mov qword [0x1803dadd8], rax
call fcn.18011443c
jmp 0x18003641c
lea rcx, [0x1803da61c]
call fcn.1801144a8
cmp dword [0x1803da61c], 0xffffffff
jne 0x180036439
mov ecx, 0xf717cec3
call fcn.180015350
lea rcx, [0x1803da61c]
mov qword [0x1803db220], rax
call fcn.18011443c
jmp 0x180036439
lea rcx, [0x1803da948]
call fcn.1801144a8
cmp dword [0x1803da948], 0xffffffff
jne 0x18003647a
mov ecx, 0x6f95d21e
call fcn.180015350
lea rcx, [0x1803da948]
mov qword [0x1803da390], rax
call fcn.18011443c
jmp 0x18003647a
lea rcx, [0x1803da038]
call fcn.1801144a8
cmp dword [0x1803da038], 0xffffffff
jne 0x1800364a5
mov ecx, 0x2f2d7eeb
call fcn.180015350
lea rcx, [0x1803da038]
mov qword [0x1803dae68], rax
call fcn.18011443c
jmp 0x1800364a5
lea rcx, [0x1803da2f8]
call fcn.1801144a8
cmp dword [0x1803da2f8], 0xffffffff
jne 0x180036546
mov ecx, 0x8d6e9b50
call fcn.180015350
lea rcx, [0x1803da2f8]
mov qword [0x1803da6a0], rax
call fcn.18011443c
jmp 0x180036546
lea rcx, [0x1803da4a8]
call fcn.1801144a8
cmp dword [0x1803da4a8], 0xffffffff
jne 0x1800365f0
mov ecx, 0x56e64b7d
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da330], rcx
lea rcx, [0x1803da4a8]
call fcn.18011443c
jmp 0x1800365f0
lea rcx, [0x1803da5f0]
call fcn.1801144a8
cmp dword [0x1803da5f0], 0xffffffff
jne 0x18003664d
mov ecx, 0xf93a4acc
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803dab50], rcx
lea rcx, [0x1803da5f0]
call fcn.18011443c
jmp 0x18003664d
lea rcx, [0x1803da740]
call fcn.1801144a8
cmp dword [0x1803da740], 0xffffffff
jne 0x1800366bf
mov ecx, 0x9a820d40
call fcn.180015350
lea rcx, [0x1803da740]
mov qword [0x1803da180], rax
call fcn.18011443c
jmp 0x1800366bf
lea rcx, [0x1803da4a8]
call fcn.1801144a8
cmp dword [0x1803da4a8], 0xffffffff
jne 0x180036753
mov ecx, 0x56e64b7d
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da330], rcx
lea rcx, [0x1803da4a8]
call fcn.18011443c
jmp 0x180036753
lea rcx, [0x1803da5f0]
call fcn.1801144a8
cmp dword [0x1803da5f0], 0xffffffff
jne 0x1800367b0
mov ecx, 0xf93a4acc
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803dab50], rcx
lea rcx, [0x1803da5f0]
call fcn.18011443c
jmp 0x1800367b0
lea rcx, [0x1803daed0]
call fcn.1801144a8
cmp dword [0x1803daed0], 0xffffffff
jne 0x180036822
mov ecx, 0xbb875491
call fcn.180015350
lea rcx, [0x1803daed0]
mov qword [0x1803da538], rax
call fcn.18011443c
jmp 0x180036822
lea rcx, [0x1803da618]
call fcn.1801144a8
cmp dword [0x1803da618], 0xffffffff
jne 0x180036843
mov ecx, 0x3dc5d92d
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da268], rcx
lea rcx, [0x1803da618]
call fcn.18011443c
jmp 0x180036843
lea rcx, [0x1803da2ac]
call fcn.1801144a8
cmp dword [0x1803da2ac], 0xffffffff
jne 0x18003685f
mov ecx, 0x4c51f85a
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da750], rcx
lea rcx, [0x1803da2ac]
call fcn.18011443c
jmp 0x18003685f
lea rcx, [0x1803da444]
call fcn.1801144a8
cmp dword [0x1803da444], 0xffffffff
jne 0x1800369b7
mov ecx, 0x6d98b7c8
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803daab0], rcx
lea rcx, [0x1803da444]
call fcn.18011443c
jmp 0x1800369b7
lea rcx, [0x1803da690]
call fcn.1801144a8
cmp dword [0x1803da690], 0xffffffff
jne 0x180036a14
mov ecx, 0x63abe7d3
call fcn.180015350
lea rcx, [0x1803da690]
mov qword [0x1803dada0], rax
call fcn.18011443c
jmp 0x180036a14
lea rcx, [0x1803da408]
call fcn.1801144a8
cmp dword [0x1803da408], 0xffffffff
jne 0x180036bf1
mov ecx, 0xc566d10
call fcn.180015350
lea rcx, [0x1803da408]
mov qword [0x1803da220], rax
call fcn.18011443c
jmp 0x180036bf1
lea rcx, [0x1803dab40]
call fcn.1801144a8
cmp dword [0x1803dab40], 0xffffffff
jne 0x180036c2c
mov ecx, 0x6e4dd739
call fcn.1800124d0
mov rcx, qword [rax]
mov qword [0x1803da868], rcx
lea rcx, [0x1803dab40]
call fcn.18011443c
jmp 0x180036c2c
lea rcx, [0x1803da408]
call fcn.1801144a8
cmp dword [0x1803da408], 0xffffffff
jne 0x180036c5b
mov ecx, 0xc566d10
call fcn.180015350
lea rcx, [0x1803da408]
mov qword [0x1803da220], rax
call fcn.18011443c
jmp 0x180036c5b