Function at 0x1800353e0
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x1800dd080]
xor rax, rsp
mov qword [rbp - 0x40], rax
mov rsi, rcx
mov r14, qword [0x1800ddd40]
mov rax, qword [r14 + 0x3eb8]
mov byte [rax + 0xb0], 1
mov r13, qword [r14 + 0x3eb8]
mov eax, dword [r14 + 0x4790]
mov dword [rsp + 0x48], eax
xor ebx, ebx
mov dword [r14 + 0x4790], ebx
cmp byte [r13 + 0xb3], bl
jne 0x180035e56
movsxd r8, dword [r13 + 0xe8]
mov rax, qword [r13 + 0xf0]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
call fcn.180006590
mov edi, eax
cmp dword [r14 + 0x3f00], eax
jne 0x1800354bb
mov r8, rsi
lea edx, [rbx + 0xb]
mov ecx, eax
call fcn.18001d1c0
movss xmm4, dword [r13 + 0xfc]
movaps xmm5, xmm4
addss xmm5, dword [0x1800cfb78]
movss xmm3, dword [r13 + 0xf8]
movaps xmm2, xmm3
addss xmm2, dword [0x1800cfba0]
movss dword [rbp - 0x70], xmm3
movss dword [rbp - 0x6c], xmm4
movss dword [rbp - 0x68], xmm2
movss dword [rbp - 0x64], xmm5
movaps xmm1, xmm4
xorps xmm14, xmm14
addss xmm1, xmm14
movaps xmm0, xmm3
addss xmm0, xmm14
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm1
movss dword [rbp - 0x58], xmm2
movss dword [rbp - 0x54], xmm5
subss xmm5, xmm4
subss xmm2, xmm3
movss dword [rsp + 0x38], xmm2
movss dword [rsp + 0x3c], xmm5
movss xmm1, dword [r14 + 0x3820]
lea rcx, [rsp + 0x38]
call fcn.180015320
xor r9d, r9d
lea r8, [rbp - 0x70]
mov edx, edi
lea rcx, [rbp - 0x60]
call fcn.180015490
test al, al
je 0x180035e56
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x30]
mov edx, edi
lea rcx, [rbp - 0x60]
call fcn.180030d00
movzx r9d, al
not edi
mov ebx, edi
lea rdx, [0x1800ce839]
mov r8b, reloc.WLDAP32.dll_Ordinal_35
lea r10, [0x1800ab0f0]
cmp r8b, 0x23
jne 0x1800355a4
cmp byte [rdx], r8b
jne 0x1800355a4
cmp byte [rdx + 1], r8b
cmove ebx, edi
movzx ecx, bl
movzx eax, r8b
xor rcx, rax
shr ebx, 8
xor ebx, dword [r10 + rcx*4]
movzx r8d, byte [rdx]
inc rdx
test r8b, r8b
jne 0x180035592
not ebx
mov rdx, qword [0x1800ddd40]
movsxd rax, dword [rdx + 0x4870]
cmp dword [rdx + 0x4860], eax
jle 0x1800355ee
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4868]
cmp dword [rcx + rax], ebx
jne 0x1800355ee
mov r15b, 1
jmp 0x1800355f1
xor r15b, r15b
test r9b, r9b
je 0x180035607
test r15b, r15b
jne 0x180035607
xor edx, edx
mov ecx, ebx
call fcn.180016800
mov r15b, 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rsi + r8], 0
jne 0x180035620
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.1800416d0
nop
mov r8d, reloc.WLDAP32.dll_Ordinal_26
lea rdx, str.begincombo.popup_open_anim
lea rcx, [rsp + 0x50]
call fcn.180040c00
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.180040ae0
movss xmm6, dword [0x1800cfa24]
movss dword [rsp + 0x20], xmm6
movss xmm7, dword [0x1800cfab8]
movaps xmm3, xmm7
movaps xmm2, xmm14
movzx edx, r15b
mov rcx, rax
call fcn.1800314b0
movaps xmm12, xmm0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x1800356c9
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800356c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800356c4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009a570
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rsi + r8], 0
jne 0x1800356e1
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.1800416d0
nop
mov r8d, reloc.WS2_32.dll_select
lea rdx, str.begincombo.hovanim
lea rcx, [rsp + 0x50]
call fcn.180040c00
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.180040ae0
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movaps xmm2, xmm14
movzx edx, byte [rsp + 0x30]
mov rcx, rax
call fcn.1800314b0
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x180035778
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180035773
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180035773
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009a570
movdqa xmm0, xmmword [0x1800cfce0]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
lea rcx, [rbp - 0x70]
cmp r15b, 1
jne 0x1800357a5
movaps xmm0, xmmword [0x1800cffd0]
movups xmmword [rbp - 0x70], xmm0
jmp 0x180035838
mov rax, qword [0x1800ddd40]
movups xmm0, xmmword [rax + 0x38cc]
movups xmmword [rbp - 0x70], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37e0]
movss dword [rbp - 0x64], xmm0
call fcn.180006b20
mov r8d, eax
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
movss xmm1, dword [0x1800cfa20]
mulss xmm0, xmm1
movss dword [rbp - 0x70], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm1
movss dword [rbp - 0x6c], xmm0
shr eax, 0x10
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp - 0x68], xmm0
shr r8d, 0x18
mov eax, r8d
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp - 0x64], xmm0
lea rcx, [rbp - 0x70]
call fcn.180006b20
mov r12d, eax
mov r13, qword [r13 + 0x290]
movss xmm8, dword [rbp - 0x58]
movaps xmm6, xmm8
subss xmm6, dword [0x1800cfb80]
subss xmm6, dword [r14 + 0x381c]
addss xmm6, dword [0x1800cfa5c]
movss xmm10, dword [0x1800cfb3c]
addss xmm6, xmm10
movss xmm13, dword [rbp - 0x5c]
movaps xmm7, xmm13
movss xmm9, dword [rbp - 0x54]
addss xmm7, xmm9
mulss xmm7, dword [0x1800cfa70]
subss xmm7, dword [0x1800cfb54]
addss xmm7, dword [0x1800cfa5c]
addss xmm7, dword [0x1800cfb68]
subss xmm7, dword [0x1800cfb14]
movaps xmm0, xmm6
subss xmm0, xmm10
movss dword [rsp + 0x38], xmm0
movaps xmm11, xmm7
subss xmm11, xmm10
movss dword [rsp + 0x3c], xmm11
mov r8d, dword [r13 + 0x7c]
mov ecx, dword [r13 + 0x78]
mov esi, 8
cmp ecx, r8d
jne 0x18003590b
inc ecx
test r8d, r8d
je 0x1800358f9
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x1800358fb
mov eax, esi
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r13 + 0x78]
call fcn.18001d9e0
movsxd rdx, dword [r13 + 0x78]
mov rcx, qword [r13 + 0x80]
mov rax, qword [rsp + 0x38]
mov qword [rcx + rdx*8], rax
mov ecx, dword [r13 + 0x78]
inc ecx
mov dword [r13 + 0x78], ecx
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x3c], xmm7
mov r8d, dword [r13 + 0x7c]
cmp ecx, r8d
jne 0x180035964
inc ecx
test r8d, r8d
je 0x180035952
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x180035954
mov eax, esi
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r13 + 0x78]
call fcn.18001d9e0
movsxd rdx, dword [r13 + 0x78]
mov rcx, qword [r13 + 0x80]
mov rax, qword [rsp + 0x38]
mov qword [rcx + rdx*8], rax
mov ecx, dword [r13 + 0x78]
inc ecx
mov dword [r13 + 0x78], ecx
addss xmm6, xmm10
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x3c], xmm11
mov r8d, dword [r13 + 0x7c]
cmp ecx, r8d
jne 0x1800359c0
inc ecx
test r8d, r8d
je 0x1800359b0
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
lea esi, [r8 + rax]
cmp esi, ecx
cmovg ecx, esi
mov edx, ecx
lea rcx, [r13 + 0x78]
call fcn.18001d9e0
movsxd r8, dword [r13 + 0x78]
mov rdx, qword [r13 + 0x80]
mov rax, qword [rsp + 0x38]
mov qword [rdx + r8*8], rax
inc dword [r13 + 0x78]
movss xmm0, dword [0x1800cfac4]
movss dword [rsp + 0x28], xmm0
xor esi, esi
mov dword [rsp + 0x20], esi
mov r9d, r12d
mov r8d, dword [r13 + 0x78]
mov rdx, qword [r13 + 0x80]
mov rcx, r13
call fcn.180026770
mov dword [r13 + 0x78], esi
test r15b, r15b
je 0x180035e56
mov r8d, dword [rsp + 0x48]
mov dword [r14 + 0x4790], r8d
mov rdx, qword [0x1800ddd40]
movsxd rax, dword [rdx + 0x4870]
cmp dword [rdx + 0x4860], eax
jle 0x180035e4f
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4868]
cmp dword [rcx + rax], ebx
jne 0x180035e4f
movaps xmm3, xmm8
movss xmm6, dword [rbp - 0x60]
subss xmm3, xmm6
test r8b, 0x10
je 0x180035a74
movss xmm0, dword [r14 + 0x47cc]
maxss xmm0, xmm3
movss dword [r14 + 0x47cc], xmm0
jmp 0x180035ae6
movss xmm0, dword [rdx + 0x3830]
movss xmm1, dword [rdx + 0x37ec]
movaps xmm2, xmm0
addss xmm2, dword [rdx + 0x3c18]
mulss xmm2, dword [0x1800cfb44]
subss xmm2, xmm0
addss xmm1, xmm1
addss xmm2, xmm1
mulss xmm2, xmm12
or dword [rdx + 0x4790], 0x10
mov dword [rbp - 0x5c], esi
mov dword [rbp - 0x58], 0x7f7fffff
movups xmm1, xmmword [rbp - 0x60]
movss xmm1, xmm3
shufps xmm1, xmm1, 0x93
movss xmm1, xmm2
shufps xmm1, xmm1, 0x39
movups xmmword [rbp - 0x60], xmm1
movups xmmword [rdx + 0x47cc], xmm1
mov qword [rdx + 0x47e0], rsi
mov qword [rdx + 0x47e8], rsi
mov r9d, dword [r14 + 0x4870]
lea r8, str.Combo__02d
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rbp - 0x50]
call fcn.1800063f0
mov r10d, 0xffffffff
mov ecx, r10d
lea r8, [rbp - 0x4f]
movzx r9d, byte [rbp - 0x50]
test r9b, r9b
je 0x180035b50
lea r11, [0x1800ab0f0]
cmp r9b, 0x23
jne 0x180035b33
cmp byte [r8], r9b
jne 0x180035b33
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
xor rdx, rax
shr ecx, 8
xor ecx, dword [r11 + rdx*4]
movzx r9d, byte [r8]
inc r8
test r9b, r9b
jne 0x180035b20
not ecx
call fcn.18000d580
mov rbx, rax
test rax, rax
je 0x180035d05
cmp byte [rax + 0xaf], sil
je 0x180035d05
mov qword [rsp + 0x48], rsi
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x70]
mov rcx, rax
call fcn.18000dd50
lea r8, [rsp + 0x48]
mov rdx, rcx
lea rcx, [rbp - 0x70]
call fcn.18000de60
lea r8, [rbp - 0x70]
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.18000db00
mov dword [rbx + 0xcc], 3
lea rcx, [rbp - 0x60]
call fcn.180017310
movdqa xmm0, xmmword [0x1800cfd10]
movdqu xmmword [rbp - 0x70], xmm0
mov edx, dword [rbx + 0xcc]
lea eax, [rdx + 1]
neg eax
sbb rcx, rcx
movss xmm4, dword [rsp + 0x3c]
movss xmm5, dword [rsp + 0x38]
movss xmm7, dword [rbp - 0x54]
movss xmm10, dword [rbp - 0x58]
movss xmm11, dword [rbp - 0x5c]
movss xmm12, dword [rbp - 0x60]
nop dword [rax]
cmp rcx, 0xffffffffffffffff
jne 0x180035c0a
mov eax, edx
jmp 0x180035c12
mov eax, dword [rbp + rcx*4 - 0x70]
cmp eax, edx
je 0x180035c7e
movaps xmm1, xmm14
movaps xmm0, xmm14
cmp eax, 3
jne 0x180035c28
movaps xmm1, xmm6
movaps xmm0, xmm9
jmp 0x180035c59
cmp eax, 1
jne 0x180035c32
movaps xmm1, xmm6
jmp 0x180035c51
test eax, eax
jne 0x180035c44
movaps xmm1, xmm8
subss xmm1, xmm5
movaps xmm0, xmm9
jmp 0x180035c59
cmp eax, 2
jne 0x180035c59
movaps xmm1, xmm8
subss xmm1, xmm5
movaps xmm0, xmm13
subss xmm0, xmm4
movaps xmm2, xmm1
addss xmm2, xmm5
movaps xmm3, xmm0
addss xmm3, xmm4
comiss xmm1, xmm12
jb 0x180035c7e
comiss xmm0, xmm11
jb 0x180035c7e
comiss xmm10, xmm2
jb 0x180035c7e
comiss xmm7, xmm3
jae 0x180035cfd
inc rcx
cmp rcx, 4
jl 0x180035c00
mov dword [rbx + 0xcc], 0xffffffff
movaps xmm1, xmm6
addss xmm1, xmm5
minss xmm1, xmm10
subss xmm1, xmm5
maxss xmm1, xmm12
movaps xmm0, xmm9
addss xmm0, xmm4
minss xmm0, xmm7
subss xmm0, xmm4
maxss xmm0, xmm11
addss xmm1, xmm14
addss xmm0, dword [0x1800cfb0c]
mov rbx, qword [0x1800ddd40]
or dword [rbx + 0x4790], 1
movss dword [rbx + 0x47a0], xmm1
movss dword [rbx + 0x47a4], xmm0
mov qword [rbx + 0x47a8], rsi
mov dword [rbx + 0x4794], 1
jmp 0x180035d0c
mov dword [rbx + 0xcc], eax
jmp 0x180035cbf
mov rbx, qword [0x1800ddd40]
movss xmm2, dword [rbx + 0x37e8]
movss xmm0, dword [rbx + 0x37ec]
mov dword [rbp - 0x70], 2
movss dword [rbp - 0x6c], xmm2
movss dword [rbp - 0x68], xmm0
lea rcx, [rbx + 0x4810]
lea rdx, [rbp - 0x70]
call fcn.18001d800
mov dword [rbx + 0x37e8], 0x41000000
mov dword [rbx + 0x37ec], 0x41200000
movss xmm1, dword [0x1800cfb0c]
mov ecx, 9
call fcn.180007270
movaps xmm1, xmm14
mov ecx, 0xa
call fcn.180007270
mov rax, qword [0x1800ddd40]
movups xmm0, xmmword [rax + 0x38dc]
movups xmmword [rbp - 0x60], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x37e0]
movss dword [rbp - 0x54], xmm0
lea rcx, [rbp - 0x60]
call fcn.180006b20
mov edx, eax
mov ecx, 4
call fcn.1800071a0
xor edx, edx
mov r8d, 0x400014f
lea rcx, [rbp - 0x50]
call fcn.18000fce0
movzx edi, al
mov ecx, 3
call fcn.1800072f0
mov rbx, qword [0x1800ddd40]
movsxd rcx, dword [rbx + 0x4800]
cmp ecx, 1
jl 0x180035e00
lea rdx, [rcx + rcx*4]
mov rcx, qword [rbx + 0x4808]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [rbx + rax*8 + 0x38bc], xmm0
dec dword [rbx + 0x4800]
test dil, dil
jne 0x180035e4b
mov rax, qword [rbx + 0x3eb8]
cmp qword [rbx + 0x4898], rax
jne 0x180035e2d
cmp byte [rbx + 0x48f5], sil
je 0x180035e2d
cmp dword [rbx + 0x48d4], esi
jne 0x180035e2d
or dword [rbx + 0x48f8], 2
test dword [rax + 0xc], 0x1000000
je 0x180035e3d
mov byte [rbx + 0x3e46], 1
call fcn.180012120
mov byte [rbx + 0x3e46], sil
jmp 0x180035e56
mov al, 1
jmp 0x180035e58
mov dword [r14 + 0x4790], esi
xor al, al
mov rcx, qword [rbp - 0x40]
xor rcx, rsp
call fcn.18009a130
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret