Function at 0x180036af0
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 [0x1800e4080]
xor rax, rsp
mov qword [rbp - 0x40], rax
mov rsi, rcx
mov r14, qword [0x1800f3f20]
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 0x180037566
movsxd r8, dword [r13 + 0xe8]
mov rax, qword [r13 + 0xf0]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
call fcn.1800065c0
mov edi, eax
cmp dword [r14 + 0x3f00], eax
jne 0x180036bcb
mov r8, rsi
lea edx, [rbx + 0xb]
mov ecx, eax
call fcn.18001d6b0
movss xmm4, dword [r13 + 0xfc]
movaps xmm5, xmm4
addss xmm5, dword [0x1800d5c34]
movss xmm3, dword [r13 + 0xf8]
movaps xmm2, xmm3
addss xmm2, dword [0x1800d5c5c]
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.180015810
xor r9d, r9d
lea r8, [rbp - 0x70]
mov edx, edi
lea rcx, [rbp - 0x60]
call fcn.180015980
test al, al
je 0x180037566
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x30]
mov edx, edi
lea rcx, [rbp - 0x60]
call fcn.180031340
movzx r9d, al
not edi
mov ebx, edi
lea rdx, [0x1800d4851]
mov r8b, reloc.WLDAP32.dll_Ordinal_35
lea r10, [0x1800b1100]
cmp r8b, 0x23
jne 0x180036cb4
cmp byte [rdx], r8b
jne 0x180036cb4
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 0x180036ca2
not ebx
mov rdx, qword [0x1800f3f20]
movsxd rax, dword [rdx + 0x4870]
cmp dword [rdx + 0x4860], eax
jle 0x180036cfe
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4868]
cmp dword [rcx + rax], ebx
jne 0x180036cfe
mov r15b, 1
jmp 0x180036d01
xor r15b, r15b
test r9b, r9b
je 0x180036d17
test r15b, r15b
jne 0x180036d17
xor edx, edx
mov ecx, ebx
call fcn.180016cf0
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 0x180036d30
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.1800426a0
nop
mov r8d, reloc.WLDAP32.dll_Ordinal_26
lea rdx, str.begincombo.popup_open_anim
lea rcx, [rsp + 0x50]
call fcn.180041bb0
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.180041a90
movss xmm6, dword [0x1800d5ab8]
movss dword [rsp + 0x20], xmm6
movss xmm7, dword [0x1800d5b60]
movaps xmm3, xmm7
movaps xmm2, xmm14
movzx edx, r15b
mov rcx, rax
call fcn.180031af0
movaps xmm12, xmm0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x180036dd9
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036dd4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036dd4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009ff1c
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 0x180036df1
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.1800426a0
nop
mov r8d, reloc.WS2_32.dll_select
lea rdx, str.begincombo.hovanim
lea rcx, [rsp + 0x50]
call fcn.180041bb0
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.180041a90
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movaps xmm2, xmm14
movzx edx, byte [rsp + 0x30]
mov rcx, rax
call fcn.180031af0
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x180036e88
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180036e83
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180036e83
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009ff1c
movdqa xmm0, xmmword [0x1800d5d60]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
lea rcx, [rbp - 0x70]
cmp r15b, 1
jne 0x180036eb5
movaps xmm0, xmmword [0x1800d5f30]
movups xmmword [rbp - 0x70], xmm0
jmp 0x180036f48
mov rax, qword [0x1800f3f20]
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.180006b50
mov r8d, eax
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
movss xmm1, dword [0x1800d5ab4]
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.180006b50
mov r12d, eax
mov r13, qword [r13 + 0x290]
movss xmm8, dword [rbp - 0x58]
movaps xmm6, xmm8
subss xmm6, dword [0x1800d5c3c]
subss xmm6, dword [r14 + 0x381c]
addss xmm6, dword [0x1800d5af4]
movss xmm10, dword [0x1800d5bf4]
addss xmm6, xmm10
movss xmm13, dword [rbp - 0x5c]
movaps xmm7, xmm13
movss xmm9, dword [rbp - 0x54]
addss xmm7, xmm9
mulss xmm7, dword [0x1800d5b10]
subss xmm7, dword [0x1800d5c0c]
addss xmm7, dword [0x1800d5af4]
addss xmm7, dword [0x1800d5c24]
subss xmm7, dword [0x1800d5bcc]
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 0x18003701b
inc ecx
test r8d, r8d
je 0x180037009
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18003700b
mov eax, esi
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r13 + 0x78]
call fcn.18001ded0
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 0x180037074
inc ecx
test r8d, r8d
je 0x180037062
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x180037064
mov eax, esi
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r13 + 0x78]
call fcn.18001ded0
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 0x1800370d0
inc ecx
test r8d, r8d
je 0x1800370c0
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.18001ded0
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 [0x1800d5b6c]
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.180026d30
mov dword [r13 + 0x78], esi
test r15b, r15b
je 0x180037566
mov r8d, dword [rsp + 0x48]
mov dword [r14 + 0x4790], r8d
mov rdx, qword [0x1800f3f20]
movsxd rax, dword [rdx + 0x4870]
cmp dword [rdx + 0x4860], eax
jle 0x18003755f
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4868]
cmp dword [rcx + rax], ebx
jne 0x18003755f
movaps xmm3, xmm8
movss xmm6, dword [rbp - 0x60]
subss xmm3, xmm6
test r8b, 0x10
je 0x180037184
movss xmm0, dword [r14 + 0x47cc]
maxss xmm0, xmm3
movss dword [r14 + 0x47cc], xmm0
jmp 0x1800371f6
movss xmm0, dword [rdx + 0x3830]
movss xmm1, dword [rdx + 0x37ec]
movaps xmm2, xmm0
addss xmm2, dword [rdx + 0x3c18]
mulss xmm2, dword [0x1800d5bfc]
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.180006420
mov r10d, 0xffffffff
mov ecx, r10d
lea r8, [rbp - 0x4f]
movzx r9d, byte [rbp - 0x50]
test r9b, r9b
je 0x180037260
lea r11, [0x1800b1100]
cmp r9b, 0x23
jne 0x180037243
cmp byte [r8], r9b
jne 0x180037243
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 0x180037230
not ecx
call fcn.18000d900
mov rbx, rax
test rax, rax
je 0x180037415
cmp byte [rax + 0xaf], sil
je 0x180037415
mov qword [rsp + 0x48], rsi
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x70]
mov rcx, rax
call fcn.18000e0d0
lea r8, [rsp + 0x48]
mov rdx, rcx
lea rcx, [rbp - 0x70]
call fcn.18000e1e0
lea r8, [rbp - 0x70]
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.18000de80
mov dword [rbx + 0xcc], 3
lea rcx, [rbp - 0x60]
call fcn.180017800
movdqa xmm0, xmmword [0x1800d5da0]
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 0x18003731a
mov eax, edx
jmp 0x180037322
mov eax, dword [rbp + rcx*4 - 0x70]
cmp eax, edx
je 0x18003738e
movaps xmm1, xmm14
movaps xmm0, xmm14
cmp eax, 3
jne 0x180037338
movaps xmm1, xmm6
movaps xmm0, xmm9
jmp 0x180037369
cmp eax, 1
jne 0x180037342
movaps xmm1, xmm6
jmp 0x180037361
test eax, eax
jne 0x180037354
movaps xmm1, xmm8
subss xmm1, xmm5
movaps xmm0, xmm9
jmp 0x180037369
cmp eax, 2
jne 0x180037369
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 0x18003738e
comiss xmm0, xmm11
jb 0x18003738e
comiss xmm10, xmm2
jb 0x18003738e
comiss xmm7, xmm3
jae 0x18003740d
inc rcx
cmp rcx, 4
jl 0x180037310
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 [0x1800d5bc4]
mov rbx, qword [0x1800f3f20]
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 0x18003741c
mov dword [rbx + 0xcc], eax
jmp 0x1800373cf
mov rbx, qword [0x1800f3f20]
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.18001dcf0
mov dword [rbx + 0x37e8], 0x41000000
mov dword [rbx + 0x37ec], 0x41200000
movss xmm1, dword [0x1800d5bc4]
mov ecx, 9
call fcn.1800075f0
movaps xmm1, xmm14
mov ecx, 0xa
call fcn.1800075f0
mov rax, qword [0x1800f3f20]
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.180006b50
mov edx, eax
mov ecx, 4
call fcn.180007460
xor edx, edx
mov r8d, 0x400014f
lea rcx, [rbp - 0x50]
call fcn.180010060
movzx edi, al
mov ecx, 3
call fcn.180007700
mov rbx, qword [0x1800f3f20]
movsxd rcx, dword [rbx + 0x4800]
cmp ecx, 1
jl 0x180037510
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 0x18003755b
mov rax, qword [rbx + 0x3eb8]
cmp qword [rbx + 0x4898], rax
jne 0x18003753d
cmp byte [rbx + 0x48f5], sil
je 0x18003753d
cmp dword [rbx + 0x48d4], esi
jne 0x18003753d
or dword [rbx + 0x48f8], 2
test dword [rax + 0xc], 0x1000000
je 0x18003754d
mov byte [rbx + 0x3e46], 1
call fcn.1800124a0
mov byte [rbx + 0x3e46], sil
jmp 0x180037566
mov al, 1
jmp 0x180037568
mov dword [r14 + 0x4790], esi
xor al, al
mov rcx, qword [rbp - 0x40]
xor rcx, rsp
call fcn.18009fa70
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