Function at 0x140024ea0
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x138]
sub rsp, 0x200
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x1402cb8a0]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov rdi, r9
mov qword [rsp + 0x68], r9
mov r14, rdx
mov rbx, rcx
mov qword [rsp + 0x70], rcx
mov r15, qword [rbp + 0x160]
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x70], r15
mov r13, qword [0x1402d1db0]
mov rax, qword [r13 + 0x11e0]
mov byte [rax + 0xb8], 1
mov rax, qword [r13 + 0x11e0]
mov qword [rsp + 0x50], rax
cmp byte [rax + 0xbb], 0
jne 0x14002596a
movsxd r8, dword [rax + 0xf0]
mov rax, qword [rax + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
call fcn.14005fbe0
mov r12d, eax
movsxd rax, dword [r13 + 0x1b98]
cmp dword [r13 + 0x1b88], eax
jle 0x140024fa3
imul rdx, rax, 0x38
mov rcx, qword [r13 + 0x1b90]
cmp dword [rdx + rcx], r12d
mov byte [rsp + 0x41], 1
je 0x140024fa8
mov byte [rsp + 0x41], 0
xor esi, esi
mov edx, esi
movsxd rcx, dword [rdi]
test ecx, ecx
js 0x140024fd9
mov r8, qword [r15]
mov rax, qword [r15 + 8]
sub rax, r8
sar rax, 5
cmp ecx, eax
jge 0x140024fd9
mov rdx, rcx
shl rdx, 5
add rdx, r8
cmp qword [rdx + 0x18], 0x10
jb 0x140024fd9
mov rdx, qword [rdx]
cmp byte [r14], sil
je 0x14002500e
test rdx, rdx
je 0x14002500e
mov rax, r14
sub rdx, r14
nop dword [rax]
movzx r8d, byte [rax]
movzx ecx, byte [rax + rdx]
sub r8d, ecx
jne 0x140025004
inc rax
test ecx, ecx
jne 0x140024ff0
test r8d, r8d
mov byte [rsp + 0x40], 1
jne 0x140025013
mov byte [rsp + 0x40], sil
movss xmm8, dword [r13 + 0xb10]
movss xmm2, dword [r13 + 0xf18]
movss dword [rsp + 0x60], xmm2
addss xmm8, xmm8
addss xmm8, xmm2
mov rcx, rbx
cmp rbx, 0xffffffffffffffff
jae 0x14002505d
nop
movzx edx, byte [rcx]
test dl, dl
je 0x14002505d
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x140025054
cmp byte [rax], dl
je 0x14002505d
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x140025040
xorps xmm15, xmm15
cmp rbx, rcx
jne 0x14002506c
xorps xmm9, xmm9
jmp 0x1400250c9
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rbx
movss xmm0, dword [0x14029fb48]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x14029fb38]
lea rdx, [rsp + 0x60]
mov rcx, qword [r13 + 0xf10]
call fcn.14007e760
movss xmm0, dword [rsp + 0x60]
addss xmm0, dword [0x14029fa18]
cvttss2si eax, xmm0
movd xmm9, eax
cvtdq2ps xmm9, xmm9
movss xmm2, dword [rsp + 0x64]
movss dword [rsp + 0x60], xmm2
call fcn.14006f3e0
movaps xmm10, xmm0
movss xmm5, dword [r13 + 0xb10]
mov rbx, qword [rsp + 0x50]
addss xmm2, dword [rbx + 0x104]
movaps xmm1, xmm5
addss xmm1, xmm5
addss xmm2, xmm1
movss xmm4, dword [rbx + 0x100]
movaps xmm1, xmm4
addss xmm1, xmm10
movss dword [rbp - 0x58], xmm4
movss xmm6, dword [rbx + 0x104]
movss dword [rbp - 0x54], xmm6
movss dword [rbp - 0x50], xmm1
movss dword [rbp - 0x4c], xmm2
comiss xmm9, xmm15
jbe 0x140025134
movaps xmm3, xmm9
addss xmm3, dword [r13 + 0xb24]
jmp 0x140025137
xorps xmm3, xmm3
movaps xmm0, xmm1
addss xmm0, xmm3
movss dword [rbp - 0x68], xmm4
movss dword [rbp - 0x64], xmm6
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm2
subss xmm1, xmm8
movaps xmm11, xmm4
maxss xmm11, xmm1
subss xmm2, xmm6
subss xmm0, xmm4
movss dword [rsp + 0x48], xmm0
movss dword [rsp + 0x4c], xmm2
movaps xmm1, xmm5
lea rcx, [rsp + 0x48]
call fcn.14006ef70
xor r9d, r9d
lea r8, [rbp - 0x58]
mov edx, r12d
lea rcx, [rbp - 0x68]
call fcn.14006f0e0
test al, al
je 0x14002596a
mov dword [rsp + 0x20], esi
lea r9, [rsp + 0x42]
lea r8, [rsp + 0x43]
mov edx, r12d
lea rcx, [rbp - 0x58]
call fcn.140087ea0
mov byte [rsp + 0x42], al
movss xmm12, dword [rbp - 0x4c]
cmp byte [rsp + 0x41], sil
jne 0x140025272
mov rdx, qword [0x1402d1db0]
mov ecx, 0x14c
mov eax, 0x15c
movzx edi, byte [rsp + 0x43]
test dil, dil
cmovne ecx, eax
movups xmm0, xmmword [rcx + rdx + 0xad0]
movups xmmword [rbp - 0x68], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rdx + 0xad0]
movss dword [rbp - 0x5c], xmm0
lea rcx, [rbp - 0x68]
call fcn.140060160
mov ebx, eax
mov r8d, 1
mov edx, r12d
lea rcx, [rbp - 0x58]
call fcn.140061f60
mov rcx, qword [rsp + 0x50]
movss xmm0, dword [r13 + 0xb14]
movss dword [rsp + 0x48], xmm11
movss dword [rsp + 0x4c], xmm12
mov dword [rsp + 0x28], 0x50
movss dword [rsp + 0x20], xmm0
mov r9d, ebx
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x58]
lea rbx, [rcx + 0x298]
mov rcx, qword [rbx]
call fcn.14007bad0
test dil, dil
jne 0x140025279
mov eax, 0x22c
jmp 0x14002527e
add rbx, 0x298
mov eax, 0x23c
mov r8, qword [0x1402d1db0]
movups xmm0, xmmword [r8 + rax + 0xad0]
movups xmmword [rbp - 0x68], xmm0
movss xmm6, dword [r8 + 0xad0]
shufps xmm0, xmm0, 0xff
mulss xmm0, xmm6
movss dword [rbp - 0x5c], xmm0
lea rcx, [rbp - 0x68]
call fcn.140060160
mov r9d, eax
movups xmm0, xmmword [r8 + 0xbac]
movups xmmword [rbp - 0x68], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, xmm6
movss dword [rbp - 0x5c], xmm0
lea rcx, [rbp - 0x68]
call fcn.140060160
mov edi, eax
movss xmm0, dword [r13 + 0xb14]
movss dword [rsp + 0x48], xmm11
movss xmm13, dword [rbp - 0x54]
movss dword [rsp + 0x4c], xmm13
mov ecx, 0xa0
mov eax, 0xf0
comiss xmm8, xmm10
cmovae ecx, eax
mov dword [rsp + 0x28], ecx
movss dword [rsp + 0x20], xmm0
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x48]
mov rcx, qword [rbx]
call fcn.14007bad0
movaps xmm0, xmm11
addss xmm0, xmm8
subss xmm0, dword [r13 + 0xb0c]
movss xmm14, dword [rbp - 0x50]
comiss xmm14, xmm0
jb 0x140025404
movss xmm1, dword [r13 + 0xb10]
movaps xmm6, xmm13
addss xmm6, xmm1
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x38]
movss xmm0, dword [rax + 0x10]
movaps xmm7, xmm0
mulss xmm7, dword [0x14029f9e0]
mulss xmm0, dword [0x14029f9e8]
addss xmm6, xmm0
movaps xmm5, xmm11
addss xmm5, xmm1
addss xmm5, xmm0
movaps xmm4, xmm7
mulss xmm4, dword [0x14029fa04]
movaps xmm3, xmm7
mulss xmm3, dword [0x14029fb40]
addss xmm3, xmm6
movaps xmm0, xmm7
mulss xmm0, dword [0x14029fa10]
addss xmm0, xmm5
movss dword [rsp + 0x48], xmm0
movss dword [rsp + 0x4c], xmm3
movaps xmm1, xmm7
mulss xmm1, dword [0x14029fa10]
movaps xmm0, xmm5
subss xmm0, xmm1
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x5c], xmm3
addss xmm4, xmm6
mulss xmm7, xmm15
addss xmm7, xmm5
movss dword [rbp - 0x68], xmm7
movss dword [rbp - 0x64], xmm4
mov dword [rsp + 0x20], edi
lea r9, [rsp + 0x48]
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x68]
call fcn.14007bc80
movss xmm6, dword [rbp - 0x58]
movzx ebx, byte [rsp + 0x41]
test bl, bl
jne 0x1400254d7
movss xmm2, dword [r13 + 0xb14]
movaps xmm0, xmm14
unpcklps xmm0, xmm12
movq rdx, xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm13
movq rcx, xmm1
call fcn.140061e10
mov qword [rbp - 0x68], rsi
movss dword [rsp + 0x58], xmm11
movss dword [rsp + 0x5c], xmm12
movaps xmm1, xmm13
addss xmm1, dword [r13 + 0xb10]
movaps xmm0, xmm6
addss xmm0, dword [r13 + 0xb0c]
movss dword [rsp + 0x48], xmm0
movss dword [rsp + 0x4c], xmm1
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x68]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8, r14
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x48]
call fcn.1400612d0
cmp byte [rsp + 0x42], sil
jne 0x1400254b3
cmp dword [r13 + 0x1be0], r12d
je 0x1400254b3
cmp byte [rsp + 0x40], sil
je 0x1400254d7
mov rdi, qword [rsp + 0x50]
cmp dword [rdi + 0x158], esi
jne 0x1400254c7
mov dword [rdi + 0x3a0], r12d
mov ecx, r12d
call fcn.140070320
mov bl, 1
movzx r12d, bl
jmp 0x1400254df
xor r12b, r12b
mov rdi, qword [rsp + 0x50]
comiss xmm9, xmm15
jbe 0x140025517
movaps xmm1, xmm13
addss xmm1, dword [r13 + 0xb10]
movaps xmm0, xmm14
addss xmm0, dword [r13 + 0xb24]
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x70]
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.140060930
test bl, bl
je 0x14002596a
subss xmm10, xmm8
movss dword [rbp - 0x78], xmm10
mov rax, qword [0x1402d1db0]
or dword [rax + 0x1ab8], 0x10
mov qword [rbp - 0x58], rsi
mov dword [rbp - 0x4c], 0x43160000
movups xmm1, xmmword [rbp - 0x58]
shufps xmm1, xmm1, 0xd2
movss xmm1, xmm10
shufps xmm1, xmm1, 0xc9
movups xmmword [rbp - 0x58], xmm1
movups xmmword [rax + 0x1af4], xmm1
lea rcx, [0x1400261d0]
mov qword [rax + 0x1b08], rcx
lea rcx, [rbp - 0x78]
mov qword [rax + 0x1b10], rcx
mov r9d, dword [r13 + 0x1b98]
lea r8, str.Combo__02d
mov eax, reloc.WS2_32.dll_recv
mov qword [rsp + 0x48], rax
mov edx, eax
lea rcx, [rbp - 0x48]
call fcn.14005fa40
mov edx, 0xffffffff
lea r8, [rbp - 0x47]
movzx r9d, byte [rbp - 0x48]
lea r10, [0x14029a7c0]
test r9b, r9b
je 0x1400255eb
mov edi, edx
cmp r9b, 0x23
jne 0x1400255c9
cmp byte [r8], r9b
jne 0x1400255c9
cmp byte [r8 + 1], r9b
cmove edx, edi
movzx ecx, dl
movzx eax, r9b
xor rcx, rax
shr edx, 8
xor edx, dword [r10 + rcx*4]
movzx r9d, byte [r8]
inc r8
test r9b, r9b
jne 0x1400255b7
mov rdi, qword [rsp + 0x50]
not edx
mov ecx, edx
call fcn.140067710
mov rbx, rax
test rax, rax
je 0x140025799
cmp byte [rax + 0xb7], sil
je 0x140025799
mov qword [rsp + 0x50], rsi
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
mov rcx, rax
call fcn.140067ed0
lea r8, [rsp + 0x50]
mov rdx, rcx
lea rcx, [rsp + 0x70]
call fcn.140067fe0
lea r8, [rsp + 0x70]
mov rdx, rbx
lea rcx, [rbp - 0x68]
call fcn.140067c90
lea rcx, [rbp - 0x58]
call fcn.140070c00
movdqa xmm0, xmmword [0x14029fbe0]
movdqu xmmword [rsp + 0x70], xmm0
mov edx, dword [rbx + 0xd4]
lea eax, [rdx + 1]
neg eax
sbb rcx, rcx
movss xmm5, dword [rbp - 0x64]
movss xmm4, dword [rbp - 0x68]
movss xmm7, dword [rbp - 0x4c]
movss xmm8, dword [rbp - 0x50]
movss xmm9, dword [rbp - 0x54]
movss xmm10, dword [rbp - 0x58]
nop dword [rax]
cmp rcx, 0xffffffffffffffff
jne 0x14002569a
mov eax, edx
jmp 0x1400256a2
mov eax, dword [rsp + rcx*4 + 0x70]
cmp eax, edx
je 0x140025712
movaps xmm2, xmm15
movaps xmm1, xmm15
cmp eax, 3
jne 0x1400256b8
movaps xmm2, xmm6
movaps xmm1, xmm12
jmp 0x1400256e9
cmp eax, 1
jne 0x1400256c2
movaps xmm2, xmm6
jmp 0x1400256e1
test eax, eax
jne 0x1400256d4
movaps xmm2, xmm14
subss xmm2, xmm4
movaps xmm1, xmm12
jmp 0x1400256e9
cmp eax, 2
jne 0x1400256e9
movaps xmm2, xmm14
subss xmm2, xmm4
movaps xmm1, xmm13
subss xmm1, xmm5
movaps xmm3, xmm1
addss xmm3, xmm5
movaps xmm0, xmm2
addss xmm0, xmm4
comiss xmm2, xmm10
jb 0x140025712
comiss xmm1, xmm9
jb 0x140025712
comiss xmm8, xmm0
jb 0x140025712
comiss xmm7, xmm3
jae 0x1400259d3
inc rcx
cmp rcx, 4
jl 0x140025690
mov dword [rbx + 0xd4], 0xffffffff
movaps xmm2, xmm4
addss xmm2, xmm6
minss xmm2, xmm8
subss xmm2, xmm4
maxss xmm2, xmm10
movaps xmm1, xmm5
addss xmm1, xmm12
minss xmm1, xmm7
subss xmm1, xmm5
maxss xmm1, xmm9
movss xmm0, dword [r13 + 0xb10]
addss xmm0, xmm0
addss xmm0, dword [rsp + 0x60]
subss xmm1, xmm0
mov rax, qword [0x1402d1db0]
or dword [rax + 0x1ab8], 1
movss dword [rax + 0x1ac8], xmm2
movss dword [rax + 0x1acc], xmm1
mov qword [rax + 0x1ad0], rsi
mov dword [rax + 0x1abc], 1
xor edx, edx
mov r8d, 0x4000143
lea rcx, [rbp - 0x48]
call fcn.140069ef0
movzx ebx, al
mov rcx, qword [0x1402d1db0]
mov rdx, qword [rcx + 0x11e0]
movss xmm0, dword [rdx + 0x28]
call fcn.14006f330
movss xmm0, dword [rdi + 0x138]
mov r11, qword [0x1402d1db0]
mov rcx, qword [r11 + 0x11e0]
mov byte [rcx + 0xb8], 1
mov rcx, qword [r11 + 0x11e0]
movss xmm1, dword [rcx + 0x24]
subss xmm1, dword [rcx + 0x88]
addss xmm1, xmm0
movss xmm0, dword [rcx + 0x20]
subss xmm0, dword [rcx + 0x84]
addss xmm0, xmm15
movss dword [rcx + 0x100], xmm0
movss dword [rcx + 0x104], xmm1
mov byte [rcx + 0x141], 1
test r12b, r12b
je 0x14002589e
mov rax, qword [r11 + 0x11e0]
cmp byte [r11 + 0x1d90], sil
jne 0x14002589e
cmp qword [r11 + 0x11f8], rsi
jne 0x14002589e
cmp qword [r11 + 0x1bd0], rax
je 0x140025851
mov qword [r11 + 0x1bd0], rax
mov word [r11 + 0x1c48], si
mov word [r11 + 0x1c10], si
mov ecx, 0x21
mov r9d, 3
cmp byte [rax + 0xbc], sil
cmovne r9d, ecx
lea edx, [rcx - 0x1e]
lea ecx, [rdx - 4]
mov r8d, 0x1600
call fcn.140071c70
mov dword [r11 + 0x1c88], 1
mov dword [r11 + 0x1c8c], 1
mov qword [rbp - 0x68], rsi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x30
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
mov r9d, 0x7f
mov r8, r14
xor edx, edx
lea rcx, str.inputText
call fcn.14008f8d0
mov byte [rsp + 0x42], al
mov r9, qword [0x1402d1db0]
mov rcx, qword [r9 + 0x11e0]
mov byte [rcx + 0xb8], 1
mov r8, qword [r9 + 0x11e0]
movsxd rax, dword [r8 + 0x1c8]
mov rcx, qword [r8 + 0x1d0]
mov edx, dword [rcx + rax*4 - 4]
mov dword [r8 + 0x1bc], edx
dec eax
mov dword [r8 + 0x1c8], eax
test bl, bl
jne 0x1400259de
call fcn.1400673f0
mov rdx, qword [0x1402d1db0]
mov rax, qword [rdx + 0x11e0]
mov byte [rax + 0xb8], 1
mov r9, qword [rdx + 0x11e0]
movsxd r8, dword [r9 + 0x1c8]
mov rax, qword [r9 + 0x1d0]
mov edx, dword [rax + r8*4 - 4]
mov dword [r9 + 0x1bc], edx
lea eax, [r8 - 1]
mov dword [r9 + 0x1c8], eax
call fcn.140070830
nop
mov rcx, r15
call fcn.14004add0
xor al, al
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.1401c4270
lea r11, [rsp + 0x200]
mov rbx, qword [r11 + 0x50]
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]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov dword [rbx + 0xd4], eax
jmp 0x140025753
mov rcx, qword [r9 + 0x11e0]
mov r10, qword [rcx + 0x1a8]
test r10, r10
jne 0x140025a16
cmp qword [r9 + 0x1e48], rsi
jne 0x140025a16
movss xmm1, dword [rcx + 0x254]
subss xmm1, dword [rcx + 0x104]
mov r8, rcx
add r8, 0x250
jmp 0x140025a47
movss xmm1, dword [rcx + 0x224]
subss xmm1, dword [rcx + 0x104]
mov r8, rcx
test r10, r10
jne 0x140025a40
cmp qword [r9 + 0x1e48], rsi
jne 0x140025a40
add r8, 0x250
jmp 0x140025a47
add r8, 0x220
movss xmm0, dword [r8]
subss xmm0, dword [rcx + 0x100]
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x5c], xmm1
mov byte [rcx + 0xb8], 1
mov rax, qword [r9 + 0x11e0]
movsxd r8, dword [rax + 0xf0]
mov rax, qword [rax + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.ChildL
call fcn.14005fbe0
mov dword [rsp + 0x20], 0xc0000
xor r9d, r9d
lea r8, [rsp + 0x58]
mov edx, eax
lea rcx, str.ChildL
call fcn.140067180
xor al, al
mov byte [rsp + 0x41], al
cmp byte [r14], al
je 0x140025b56
mov edi, esi
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rcx
sar rax, 5
test eax, eax
jle 0x140025b3e
mov r12, rsi
lea rbx, [r12 + rcx]
cmp qword [rbx + 0x18], 0x10
jb 0x140025ae1
mov rbx, qword [rbx]
cmp byte [r14], sil
jne 0x140025b05
cmp byte [rbx], sil
jne 0x140025b26
test edi, edi
js 0x140025b3e
mov r13, qword [rsp + 0x68]
cmp dword [r13], edi
setne al
mov byte [rsp + 0x41], al
mov dword [r13], edi
jmp 0x140025b5f
mov rdx, r14
mov rcx, rbx
call fcn.1401c63d4
test rax, rax
jne 0x140025aeb
mov rdx, r14
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
jne 0x140025aeb
inc edi
add r12, 0x20
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rcx
sar rax, 5
cmp edi, eax
jl 0x140025ad3
mov r13, qword [rsp + 0x68]
mov edi, dword [r13]
cmp edi, edi
setne al
mov byte [rsp + 0x41], al
mov dword [r13], edi
jmp 0x140025b5f
mov r13, qword [rsp + 0x68]
mov edi, dword [r13]
xor al, al
mov byte [rsp + 0x40], al
mov r11d, edi
xor edx, edx
mov ecx, 0x203
lea r8d, [rdx + 1]
call fcn.14006d630
test al, al
je 0x140025ba5
test edi, edi
jle 0x140025ba5
lea eax, [rdi - 1]
mov dword [r13], eax
mov byte [rsp + 0x40], 1
xor edx, edx
mov rcx, qword [0x1402d1db0]
mov rcx, qword [rcx + 0x11e0]
call fcn.14006c480
mov r11d, dword [r13]
xor edx, edx
mov ecx, 0x204
lea r8d, [rdx + 1]
call fcn.14006d630
test al, al
je 0x140025bee
cmp r11d, 0xffffffff
jl 0x140025bee
mov eax, dword [rbp + 0x168]
dec eax
cmp r11d, eax
jge 0x140025bee
lea eax, [r11 + 1]
mov dword [r13], eax
mov byte [rsp + 0x40], 1
xor edx, edx
mov rcx, qword [0x1402d1db0]
mov rcx, qword [rcx + 0x11e0]
call fcn.14006c480
xor edx, edx
mov ecx, 0x20d
lea r8d, [rdx + 1]
call fcn.14006d630
test al, al
je 0x140025c8d
mov byte [rsp + 0x40], 1
mov edi, esi
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rcx
sar rax, 5
test eax, eax
jle 0x140025c7d
mov r12, rsi
lea rbx, [r12 + rcx]
cmp qword [rbx + 0x18], 0x10
jb 0x140025c30
mov rbx, qword [rbx]
cmp byte [r14], sil
jne 0x140025c44
cmp byte [rbx], sil
jne 0x140025c65
mov dword [r13], edi
test edi, edi
jns 0x140025c88
jmp 0x140025c85
mov rdx, r14
mov rcx, rbx
call fcn.1401c63d4
test rax, rax
jne 0x140025c3a
mov rdx, r14
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
jne 0x140025c3a
inc edi
add r12, 0x20
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rcx
sar rax, 5
cmp edi, eax
jl 0x140025c22
mov dword [r13], 0xffffffff
mov byte [r14], sil
call fcn.140070780
xor edx, edx
mov ecx, 0x20b
lea r8d, [rdx + 1]
call fcn.14006d630
test al, al
je 0x140025d26
mov edi, esi
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rcx
sar rax, 5
test eax, eax
jle 0x140025d13
mov r12, rsi
nop dword [rax]
lea rbx, [rcx + r12]
cmp qword [rbx + 0x18], 0x10
jb 0x140025cce
mov rbx, qword [rbx]
cmp byte [r14], sil
jne 0x140025cda
cmp byte [rbx], sil
je 0x140025d18
jmp 0x140025cfb
mov rdx, r14
mov rcx, rbx
call fcn.1401c63d4
test rax, rax
jne 0x140025d18
mov rdx, r14
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
jne 0x140025d18
inc edi
add r12, 0x20
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rcx
sar rax, 5
cmp edi, eax
jl 0x140025cc0
mov edi, 0xffffffff
mov dword [r13], edi
mov dil, 1
mov byte [rsp + 0x41], dil
jmp 0x140025d2b
movzx edi, byte [rsp + 0x41]
movzx r8d, byte [rsp + 0x40]
cmp byte [rsp + 0x42], sil
je 0x140025d48
test r8b, r8b
jne 0x140025d48
call fcn.140070780
movzx r8d, byte [rsp + 0x40]
mov byte [rsp + 0x43], sil
mov ebx, esi
cmp dword [rbp + 0x168], esi
jle 0x140025f51
mov qword [rbp - 0x68], rbx
mov r12, rsi
cmp ebx, dword [r13]
sete r13b
jne 0x140025eb3
mov rdx, qword [0x1402d1db0]
mov rax, qword [rdx + 0x11e0]
cmp byte [rax + 0xbc], sil
jne 0x140025d90
test dil, dil
je 0x140025e1c
mov rcx, rax
movss xmm3, dword [rax + 0x54]
movaps xmm2, xmm3
maxss xmm2, dword [rdx + 0xb20]
movss xmm1, dword [rax + 0x10c]
movaps xmm0, xmm1
subss xmm0, xmm2
addss xmm1, dword [rax + 0x134]
addss xmm1, xmm2
subss xmm1, xmm0
movss xmm4, dword [0x14029f9e8]
mulss xmm1, xmm4
addss xmm1, xmm0
subss xmm1, dword [rax + 0x24]
subss xmm1, dword [rax + 0x64]
subss xmm1, dword [rax + 0x74]
addss xmm1, dword [rax + 0x88]
cvttss2si eax, xmm1
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
movss dword [rcx + 0x98], xmm0
mov dword [rcx + 0xa0], 0x3f000000
subss xmm3, xmm2
movaps xmm0, xmm15
maxss xmm0, xmm3
movss dword [rcx + 0xa8], xmm0
jmp 0x140025e24
movss xmm4, dword [0x14029f9e8]
test r8b, r8b
je 0x140025eb3
mov rcx, qword [rdx + 0x11e0]
movss xmm3, dword [rcx + 0x54]
movaps xmm2, xmm3
maxss xmm2, dword [rdx + 0xb20]
movss xmm1, dword [rcx + 0x10c]
movaps xmm0, xmm1
subss xmm0, xmm2
addss xmm1, dword [rcx + 0x134]
addss xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, xmm4
addss xmm1, xmm0
subss xmm1, dword [rcx + 0x24]
subss xmm1, dword [rcx + 0x64]
subss xmm1, dword [rcx + 0x74]
addss xmm1, dword [rcx + 0x88]
cvttss2si eax, xmm1
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
movss dword [rcx + 0x98], xmm0
mov dword [rcx + 0xa0], 0x3f000000
subss xmm3, xmm2
movaps xmm0, xmm15
maxss xmm0, xmm3
movss dword [rcx + 0xa8], xmm0
mov rdi, rsi
mov rcx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rcx
sar rax, 5
cmp ebx, eax
jge 0x140025ed6
lea rdi, [rcx + r12]
cmp qword [rdi + 0x18], 0x10
jb 0x140025ed6
mov rdi, qword [rdi]
mov dword [rsp + 0x20], ebx
mov r9, rdi
lea r8, str._sitem__02d
mov edx, 0x80
lea rcx, [rbp - 0x30]
call fcn.14005fa40
lea r9, [rbp - 0x68]
movzx edx, r13b
lea rcx, [rbp - 0x30]
call fcn.140094110
mov r13, qword [rsp + 0x68]
test al, al
je 0x140025f34
cmp dword [r13], ebx
setne byte [rsp + 0x41]
mov dword [r13], ebx
mov r8d, 0x7f
mov rdx, rdi
mov rcx, r14
call fcn.1401d12e0
call fcn.140070780
mov byte [rsp + 0x43], 1
inc ebx
add r12, 0x20
cmp ebx, dword [rbp + 0x168]
movzx edi, byte [rsp + 0x41]
movzx r8d, byte [rsp + 0x40]
jl 0x140025d62
cmp byte [rsp + 0x40], sil
je 0x14002612e
movsxd rcx, dword [r13]
cmp ecx, 0xffffffff
jle 0x14002612e
mov rdx, rsi
mov r9, qword [r15]
mov rax, qword [r15 + 8]
sub rax, r9
sar rax, 5
cmp ecx, eax
jge 0x140025f92
mov rdx, rcx
shl rdx, 5
add rdx, r9
cmp qword [rdx + 0x18], 0x10
jb 0x140025f92
mov rdx, qword [rdx]
mov r8d, 0x7f
mov rcx, r14
call fcn.1401d12e0
mov ecx, 0xffffffff
lea r8, [rbp - 0x47]
movzx r9d, byte [rbp - 0x48]
test r9b, r9b
je 0x140025ff4
mov r15d, ecx
lea r10, [0x14029a7c0]
nop dword [rax]
cmp r9b, 0x23
jne 0x140025fd3
cmp byte [r8], r9b
jne 0x140025fd3
cmp byte [r8 + 1], r9b
cmove ecx, r15d
movzx edx, cl
movzx eax, r9b
xor rdx, rax
shr ecx, 8
xor ecx, dword [r10 + rdx*4]
movzx r9d, byte [r8]
inc r8
test r9b, r9b
jne 0x140025fc0
mov r15, qword [rbp - 0x80]
not ecx
call fcn.140067710
movsxd r8, dword [rax + 0xf0]
mov rax, qword [rax + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.inputText
call fcn.14005fbe0
mov rcx, qword [0x1402d1db0]
test eax, eax
je 0x14002607a
cmp dword [rcx + 0x1f30], eax
jne 0x14002607a
lea r8, [rcx + 0x1f34]
mov qword [rbp - 0x68], r8
lea rax, [rcx + 0x1f38]
mov qword [rsp + 0x48], rax
lea rdx, [rcx + 0x1f7c]
mov qword [rsp + 0x58], rdx
lea rdx, [rcx + 0x1f80]
mov qword [rsp + 0x50], rdx
lea rdx, [rcx + 0x1f84]
mov qword [rsp + 0x70], rdx
lea rax, [rcx + 0x1f40]
add rcx, 0x1f48
jmp 0x1400260a7
mov qword [rbp - 0x68], select
mov qword [rsp + 0x58], 0x54
mov qword [rsp + 0x50], 0x58
mov qword [rsp + 0x70], 0x5c
mov eax, 0x18
mov ecx, 0x20
mov rdi, r14
mov r13, qword [rcx]
mov rbx, r13
movsxd rax, dword [rax]
lea r12, [rax*4 - 4]
add r12, r13
cmp r13, r12
jae 0x1400260ed
cmp byte [rdi], sil
je 0x1400260ed
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.14005fef0
movsxd rcx, eax
add rdi, rcx
mov eax, dword [rsp + 0x60]
mov dword [rbx], eax
add rbx, 4
cmp rbx, r12
jb 0x1400260c3
mov dword [rbx], esi
sub rbx, r13
sar rbx, 2
mov rax, qword [rbp - 0x68]
mov dword [rax], ebx
sub edi, r14d
mov rax, qword [rsp + 0x48]
mov dword [rax], edi
mov rdx, qword [rsp + 0x58]
mov ecx, ebx
cmp dword [rdx], ebx
cmovl ecx, dword [rdx]
mov dword [rdx], ecx
mov rdx, qword [rsp + 0x50]
mov ecx, ebx
cmp dword [rdx], ebx
cmovl ecx, dword [rdx]
mov dword [rdx], ecx
mov rcx, qword [rsp + 0x70]
cmp dword [rcx], ebx
cmovl ebx, dword [rcx]
mov dword [rcx], ebx
call fcn.1400673f0
call fcn.140070830
mov rdi, qword [rsp + 0x68]
movsxd rcx, dword [rdi]
test ecx, ecx
js 0x14002616a
mov rdx, qword [r15]
mov rax, qword [r15 + 8]
sub rax, rdx
sar rax, 5
cmp ecx, eax
jge 0x14002616a
mov rsi, rcx
shl rsi, 5
add rsi, rdx
cmp qword [rsi + 0x18], 0x10
jb 0x14002616a
mov rsi, qword [rsi]
cmp byte [rsp + 0x41], 0
je 0x14002619b
test rsi, rsi
je 0x14002619b
sub r14, rsi
nop dword [rax]
movzx ecx, byte [rsi]
movzx eax, byte [rsi + r14]
sub ecx, eax
jne 0x140026193
inc rsi
test eax, eax
jne 0x140026180
test ecx, ecx
jne 0x14002619b
mov al, 1
jmp 0x14002619d
xor al, al
cmp byte [rsp + 0x42], 0
jne 0x1400261b3
cmp byte [rsp + 0x43], 0
jne 0x1400261b3
test al, al
jne 0x1400261b3
xor bl, bl
jmp 0x1400261b5
mov bl, 1
mov rcx, r15
call fcn.14004add0
movzx eax, bl
jmp 0x140025974