Function at 0x140073830
Capabilities:
Hash data using crc32b

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x478
movaps xmmword [rsp + 0x450], xmm6
movaps xmmword [rsp + 0x460], xmm7
cmp dword [rcx + 0x5e0], 1
mov rbx, rcx
jne 0x140073872
movzx eax, byte [rcx + 0x5e4]
cmp al, 0x1e
je 0x140073920
cmp al, 0x40
je 0x1400738b0
mov dword [rbx + 0x9c], 0x22
xor r12d, r12d
movaps xmm6, xmmword [rsp + 0x450]
movaps xmm7, xmmword [rsp + 0x460]
mov eax, r12d
add rsp, 0x478
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, [rsp + 0x5a]
mov r8d, 6
call fcn.14006dae0
test eax, eax
je 0x140073872
cmp byte [rsp + 0x5a], 0x66
jne 0x140073872
cmp byte [rsp + 0x5b], 0x69
jne 0x140073872
cmp byte [rsp + 0x5c], 0x73
jne 0x140073872
cmp byte [rsp + 0x5d], 0x68
jne 0x140073872
cmp byte [rsp + 0x5e], 0x65
jne 0x140073872
cmp byte [rsp + 0x5f], 0x61
jne 0x140073872
mov rcx, rbx
call fcn.14006da80
cmp al, 0x64
jne 0x140073872
mov rcx, rbx
call fcn.14006da80
test al, al
jne 0x140073872
mov dword [rbx + 0x9c], 0x26
xor r12d, r12d
jmp 0x14007387f
mov rax, qword [rcx + 0x40]
test rax, rax
je 0x1400739d0
cmp rax, qword [rcx + 0x50]
jae 0x1400739e8
lea rdx, [rax + 1]
mov qword [rcx + 0x40], rdx
movzx eax, byte [rax]
cmp al, 1
jne 0x140073872
lea r13, [rsp + 0x5a]
mov r8d, 6
mov rcx, rbx
mov rdx, r13
call fcn.14006dae0
mov r12d, eax
test eax, eax
je 0x140073a00
mov eax, dword [str.vorbisOggS]
cmp dword [rsp + 0x5a], eax
jne 0x140073872
movzx eax, word [0x1400a4664]
cmp word [r13 + 4], ax
jne 0x140073872
mov rcx, rbx
xor r12d, r12d
call fcn.14006ec20
test eax, eax
jne 0x140073872
mov rax, qword [rbx + 0x40]
test rax, rax
je 0x140074026
cmp rax, qword [rbx + 0x50]
jb 0x140073a0f
mov dword [rbx + 0x98], 1
mov dword [rbx + 4], 0
jmp 0x140073872
mov rcx, qword [rcx + 0x30]
call sub.msvcrt.dll_fgetc
cmp eax, 0xffffffff
jne 0x140073942
nop word [rax + rax]
mov dword [rbx + 0x98], 1
jmp 0x140073872
mov dword [rbx + 0x9c], 0xa
jmp 0x14007387f
lea rdx, [rax + 1]
mov qword [rbx + 0x40], rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [rbx + 4], eax
test eax, eax
je 0x140073872
cmp eax, 0x10
jle 0x140073a3c
mov dword [rbx + 0x9c], 5
jmp 0x14007387f
mov rcx, rbx
call fcn.14006ec20
mov dword [rbx], eax
test eax, eax
je 0x140073872
mov rcx, rbx
call fcn.14006ec20
mov rcx, rbx
call fcn.14006ec20
mov rcx, rbx
call fcn.14006ec20
mov rcx, rbx
call fcn.14006da80
mov edx, 1
mov ecx, eax
mov r9d, eax
mov edi, edx
shr al, 4
and ecx, 0xf
and r9d, 0xf
movzx r8d, al
shl edi, cl
mov ecx, eax
lea eax, [r9 - 6]
shl edx, cl
mov dword [rbx + 0xa8], edi
mov dword [rbx + 0xac], edx
cmp eax, 7
ja 0x1400740c7
lea eax, [r8 - 6]
cmp eax, 7
ja 0x1400740c7
cmp r9d, r8d
jg 0x1400740c7
mov rcx, rbx
call fcn.14006da80
test al, 1
je 0x140073872
mov rcx, rbx
call fcn.14006f610
test eax, eax
je 0x14007387f
mov rcx, rbx
call fcn.14006f760
test eax, eax
je 0x14007387f
mov rcx, rbx
call fcn.14006f7d0
test eax, eax
je 0x14007387f
mov rcx, rbx
call fcn.14006f8d0
mov dword [rbx + 0x6f8], 0
cmp eax, 3
jne 0x1400740c7
xor esi, esi
mov rcx, rbx
call fcn.14006f8d0
mov dword [rbx + 0x6f8], 0
mov byte [r13 + rsi], al
add rsi, 1
cmp rsi, 6
jne 0x140073b1a
mov r8d, 6
lea rdx, str.vorbisOggS
mov rcx, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400740c7
mov rcx, rbx
xor esi, esi
call fcn.14006faa0
mov rcx, rbx
lea edx, [rax + 1]
mov edi, eax
call fcn.14006d910
mov qword [rbx + 0x18], rax
test rax, rax
jne 0x140073b9a
jmp 0x1400740e1
mov rcx, rbx
call fcn.14006f8d0
mov rdx, qword [rbx + 0x18]
mov dword [rbx + 0x6f8], 0
mov byte [rdx + rsi], al
add rsi, 1
cmp edi, esi
jg 0x140073b7d
mov rdx, qword [rbx + 0x18]
movsxd rax, edi
mov rcx, rbx
mov byte [rdx + rax], 0
call fcn.14006faa0
mov qword [rbx + 0x28], 0
mov dword [rbx + 0x20], eax
test eax, eax
jg 0x1400740f3
mov rcx, rbx
call fcn.14006f8d0
mov dword [rbx + 0x6f8], 0
and eax, 1
mov dword [rsp + 0x34], eax
je 0x1400740c7
movzx edx, byte [rbx + 0x6e4]
mov rcx, rbx
call fcn.14006dbd0
mov byte [rbx + 0x6e4], 0
mov rcx, rbx
call fcn.14006f7d0
mov rcx, rbx
mov esi, eax
mov edx, eax
call fcn.14006dbd0
mov byte [rbx + 0x6e4], 0
test esi, esi
jne 0x140073bf9
mov rcx, rbx
call fcn.14006f760
test eax, eax
je 0x14007387f
cmp byte [rbx + 0x5c], 0
je 0x140073c3e
mov rcx, rbx
call fcn.14006ce70
test eax, eax
je 0x140074188
xor edx, edx
lea r8, [0x1400c0be0]
mov eax, edx
mov ecx, 8
shl eax, 0x18
lea r9d, [rax + rax]
sar eax, 0x1f
and eax, 0x4c11db7
xor eax, r9d
sub ecx, 1
jne 0x140073c51
mov dword [r8 + rdx*4], eax
add rdx, 1
cmp rdx, 0x100
jne 0x140073c47
mov rcx, rbx
call fcn.14006f8d0
mov dword [rbx + 0x6f8], 0
cmp eax, 5
jne 0x1400740c7
xor esi, esi
mov rcx, rbx
call fcn.14006f8d0
mov dword [rbx + 0x6f8], 0
mov byte [r13 + rsi], al
add rsi, 1
cmp rsi, 6
jne 0x140073c93
mov r8d, 6
lea rdx, str.vorbisOggS
mov rcx, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400740c7
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
mov rcx, rbx
add eax, 1
mov dword [rbx + 0xb0], eax
imul edx, eax, 0x848
call fcn.14006d910
mov qword [rbx + 0xb8], rax
mov rcx, rax
test rax, rax
je 0x1400740e1
movsxd r8, dword [rbx + 0xb0]
xor edx, edx
imul r8, r8, 0x848
call sub.msvcrt.dll_memset
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x38], 0
mov eax, dword [rsp + 0x38]
cmp dword [rbx + 0xb0], eax
jle 0x14007419a
mov edx, 8
mov rcx, rbx
imul rbp, qword [rsp + 0x38], 0x848
add rbp, qword [rbx + 0xb8]
call fcn.14006f9a0
cmp al, 0x42
jne 0x1400740c2
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
cmp al, 0x43
jne 0x1400740c2
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
cmp al, 0x56
jne 0x1400740c2
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
mov esi, eax
call fcn.14006f9a0
movzx esi, sil
mov edx, 8
mov rcx, rbx
shl eax, 8
add eax, esi
mov dword [rbp], eax
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
mov edi, eax
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
movzx edi, dil
mov esi, eax
call fcn.14006f9a0
shl esi, 8
mov rcx, rbx
shl eax, 0x10
movzx edx, si
add eax, edi
add eax, edx
mov edx, 1
mov dword [rbp + 4], eax
call fcn.14006f9a0
test eax, eax
je 0x14007403d
cmp dword [rbp], 0
mov byte [rbp + 0x1b], 0
jne 0x140073e1a
cmp dword [rbp + 4], 0
jne 0x1400740c2
mov edx, dword [rbp + 4]
mov rcx, rbx
call fcn.14006d910
mov qword [rbp + 8], rax
mov r12, rax
test rax, rax
je 0x1400740e1
mov edx, 5
mov rcx, rbx
xor esi, esi
call fcn.14006f9a0
lea edi, [rax + 1]
jmp 0x140073e8a
mov ecx, r15d
sub ecx, esi
call fcn.14006d9b0
mov rcx, rbx
mov edx, eax
call fcn.14006f9a0
movsxd r8, eax
cmp edi, 0x1f
jg 0x1400740c2
lea r13d, [rsi + r8]
cmp r13d, dword [rbp + 4]
jg 0x1400740c2
movsxd rcx, esi
mov edx, edi
mov esi, r13d
add edi, 1
add rcx, r12
call sub.msvcrt.dll_memset
mov r15d, dword [rbp + 4]
cmp r15d, esi
jg 0x140073e49
xor r13d, r13d
cmp byte [rbp + 0x1b], 0
jne 0x140074334
xor edx, edx
xor eax, eax
jmp 0x140073eb8
movzx edi, byte [r12 + rax]
lea ecx, [rdi - 0xb]
cmp cl, 0xf4
adc edx, 0
add rax, 1
cmp r15d, eax
jg 0x140073ea6
mov dword [rbp + 0x840], edx
mov rcx, rbx
lea edx, [r15*4]
call fcn.14006d910
mov qword [rbp + 0x28], rax
test rax, rax
je 0x1400740e1
mov r15d, dword [rbp + 4]
xor r13d, r13d
lea rdi, [rsp + 0x60]
xor eax, eax
mov ecx, 0x20
mov qword [rsp + 0x28], rdi
rep stosd dword [rdi], eax
xor eax, eax
jmp 0x140073f10
movzx edx, byte [r12 + rax]
add rax, 1
add dl, 1
jne 0x1400743be
mov r14d, eax
mov esi, eax
cmp r15d, eax
jg 0x140073efe
cmp r15d, eax
jne 0x1400743be
cmp dword [rbp + 0x840], 0
jne 0x1400744dd
cmp byte [rbp + 0x1b], 0
je 0x140073f7a
mov r8d, dword [rbp + 0x840]
mov rdx, r13
mov rcx, rbx
shl r8d, 2
call fcn.14006ce40
mov r8d, dword [rbp + 0x840]
mov rdx, qword [rbp + 0x28]
mov rcx, rbx
shl r8d, 2
call fcn.14006ce40
mov r8d, dword [rbp + 4]
mov rdx, r12
mov rcx, rbx
call fcn.14006ce40
mov qword [rbp + 0x28], 0
lea rdi, [rbp + 0x38]
mov eax, ebp
mov qword [rbp + 0x30], 0xffffffffffffffff
mov qword [rbp + 0x828], 0xffffffffffffffff
and rdi, 0xfffffffffffffff8
sub eax, edi
lea ecx, [rax + 0x830]
or rax, 0xffffffffffffffff
shr ecx, 3
rep stosq qword [rdi], rax
movzx r10d, byte [rbp + 0x1b]
test r10b, r10b
je 0x14007516c
mov eax, dword [rbp + 0x840]
cmp eax, 0x7fff
mov r9d, 0x7fff
mov esi, 1
cmovle r9d, eax
xor r8d, r8d
jmp 0x140073fda
add r8, 1
cmp r9d, r8d
jle 0x140075145
mov r11, qword [rbp + 8]
add r11, r8
cmp byte [r11], 0xa
ja 0x140073fd6
test r10b, r10b
je 0x14007562b
mov rax, qword [rbp + 0x830]
mov ecx, dword [rax + r8*4]
call fcn.14006c500
jmp 0x14007401d
mov edx, eax
mov word [rbp + rdx*2 + 0x30], r8w
movzx ecx, byte [r11]
mov edx, esi
shl edx, cl
add eax, edx
cmp eax, 0x3ff
jbe 0x14007400b
jmp 0x140073fd6
mov rcx, qword [rbx + 0x30]
call sub.msvcrt.dll_fgetc
cmp eax, 0xffffffff
jne 0x140073a1a
jmp 0x1400739b3
mov edx, 1
mov rcx, rbx
call fcn.14006f9a0
cmp dword [rbp], 0
mov byte [rbp + 0x1b], al
jne 0x140074059
cmp dword [rbp + 4], 0
jne 0x1400740c2
mov edx, dword [rbp + 4]
mov rcx, rbx
test al, al
je 0x1400744c3
call fcn.14006d8c0
mov r12, rax
test rax, rax
je 0x1400740e1
xor r13d, r13d
xor esi, esi
jmp 0x140074095
mov edx, 1
mov rcx, rbx
call fcn.14006f9a0
test eax, eax
jne 0x1400740a6
mov byte [r12 + rsi], 0xff
add rsi, 1
movzx eax, byte [rbp + 0x1b]
cmp dword [rbp + 4], esi
jle 0x14007432b
test al, al
jne 0x14007407b
mov edx, 5
mov rcx, rbx
add r13d, 1
call fcn.14006f9a0
add eax, 1
mov byte [r12 + rsi], al
cmp al, 0x20
jne 0x140074091
mov r12d, dword [rsp + 0x30]
mov dword [rbx + 0x9c], 0x14
jmp 0x14007387f
mov qword [rbp + 0x838], 0
mov dword [rbx + 0x9c], 3
xor r12d, r12d
jmp 0x14007387f
lea edx, [rax*8]
mov rcx, rbx
call fcn.14006d910
mov qword [rbx + 0x28], rax
test rax, rax
je 0x1400740e1
xor ebp, ebp
cmp dword [rbx + 0x20], ebp
jle 0x140073bc4
mov rcx, rbx
lea r14, [rbp*8]
call fcn.14006faa0
mov rdi, qword [rbx + 0x28]
mov rcx, rbx
movsxd rsi, eax
lea edx, [rsi + 1]
add rdi, r14
call fcn.14006d910
mov qword [rdi], rax
mov rax, qword [rbx + 0x28]
cmp qword [rax + rbp*8], 0
je 0x1400740e1
xor edi, edi
jmp 0x140074172
mov rcx, rbx
call fcn.14006f8d0
mov dword [rbx + 0x6f8], 0
mov r8d, eax
mov rax, qword [rbx + 0x28]
mov rax, qword [rax + r14]
mov byte [rax + rdi], r8b
add rdi, 1
cmp esi, edi
jg 0x14007414d
mov rax, qword [rbx + 0x28]
add rbp, 1
mov rax, qword [rax + r14]
mov byte [rax + rsi], 0
jmp 0x14007410d
cmp dword [rbx + 0x9c], 0x15
jne 0x14007387f
jmp 0x1400740c7
mov edx, 6
mov rcx, rbx
mov r12d, dword [rsp + 0x30]
xor edi, edi
call fcn.14006f9a0
lea esi, [rax + 1]
movzx esi, sil
jmp 0x1400741cf
mov edx, 0x10
mov rcx, rbx
call fcn.14006f9a0
test eax, eax
jne 0x1400740c7
add edi, 1
cmp edi, esi
jl 0x1400741b7
mov edx, 6
mov rcx, rbx
call fcn.14006f9a0
mov rcx, rbx
add eax, 1
mov dword [rbx + 0xc0], eax
imul edx, eax, 0x63c
call fcn.14006d910
mov qword [rbx + 0x148], rax
test rax, rax
je 0x1400740e1
mov dword [rsp + 0x30], 0
xor eax, eax
lea rdi, [rsp + 0x60]
mov dword [rsp + 0x28], r12d
mov r12, rax
cmp dword [rbx + 0xc0], r12d
jle 0x140074a4a
mov edx, 0x10
mov rcx, rbx
call fcn.14006f9a0
mov word [rbx + r12*2 + 0xc4], ax
cmp ax, 1
ja 0x140074a40
imul rsi, r12, 0x63c
add rsi, qword [rbx + 0x148]
test ax, ax
je 0x1400748bb
mov edx, 5
mov rcx, rbx
xor r13d, r13d
or ebp, 0xffffffff
call fcn.14006f9a0
mov byte [rsi], al
jmp 0x140074297
mov edx, 4
mov rcx, rbx
call fcn.14006f9a0
mov byte [rsi + r13 + 1], al
movzx eax, al
cmp ebp, eax
cmovl ebp, eax
add r13, 1
movzx eax, byte [rsi]
cmp eax, r13d
jg 0x140074279
xor r14d, r14d
cmp ebp, r14d
jl 0x140074999
mov edx, 3
mov rcx, rbx
call fcn.14006f9a0
mov edx, 2
mov rcx, rbx
add eax, 1
mov byte [rsi + r14 + 0x21], al
call fcn.14006f9a0
mov byte [rsi + r14 + 0x31], al
test al, al
jne 0x140074976
mov r13, r14
xor r15d, r15d
shl r13, 4
add r13, rsi
jmp 0x140074310
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
sub eax, 1
mov word [r13 + r15*2 + 0x52], ax
add r15, 1
cwde
cmp eax, dword [rbx + 0xb0]
jge 0x140074952
movzx ecx, byte [rsi + r14 + 0x31]
mov eax, 1
shl eax, cl
cmp eax, r15d
jg 0x1400742e9
add r14, 1
jmp 0x1400742a2
mov r15d, dword [rbp + 4]
jmp 0x140073e96
mov eax, r15d
sar eax, 2
cmp eax, r13d
jg 0x140074390
cmp dword [rbx + 0x10], r15d
jge 0x140074349
mov dword [rbx + 0x10], r15d
mov rcx, rbx
mov edx, r15d
call fcn.14006d910
mov qword [rbp + 8], rax
mov rcx, rax
test rax, rax
je 0x1400740e1
movsxd r8, dword [rbp + 4]
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov r8d, dword [rbp + 4]
mov rdx, r12
mov rcx, rbx
call fcn.14006ce40
mov byte [rbp + 0x1b], 0
mov r12, qword [rbp + 8]
mov r15d, dword [rbp + 4]
jmp 0x140073ea0
mov dword [rbp + 0x840], r13d
test r13d, r13d
jne 0x140074c4b
xor r13d, r13d
mov eax, dword [rbp + 0x840]
lea eax, [r15 + rax*8]
cmp eax, dword [rbx + 0x10]
jbe 0x140073ee7
mov dword [rbx + 0x10], eax
jmp 0x140073ee7
movsxd r9, esi
lea rdi, [r12 + r9]
cmp byte [rdi], 0x1f
jbe 0x1400743ee
mov qword [rsp + 0x40], r9
mov r8d, 0x45b
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.len_k____32
call qword [sym.imp.msvcrt.dll__assert]
mov r9, qword [rsp + 0x40]
cmp byte [rbp + 0x1b], 0
mov rax, qword [rbp + 0x28]
jne 0x14007458b
mov dword [rax + r9*4], 0
xor eax, eax
mov r8d, 0x20
mov edx, 1
jmp 0x14007442a
mov ecx, r8d
mov r11d, edx
sub ecx, eax
shl r11d, cl
mov ecx, r11d
mov r11, qword [rsp + 0x28]
mov dword [r11 + rax*4], ecx
movzx ecx, byte [rdi]
add rax, 1
cmp ecx, eax
jge 0x140074413
mov qword [rsp + 0x4c0], rbx
lea r10d, [rsi + 1]
movsxd r14, dword [rsp + 0x34]
movsxd rdi, r10d
cmp r15d, edi
jle 0x1400748ae
movzx eax, byte [r12 + rdi]
mov ebx, eax
cmp eax, 0xff
je 0x1400748a4
cmp eax, 0x1f
jg 0x140074885
movzx eax, bl
jmp 0x140074487
mov rdx, qword [rsp + 0x28]
sub rax, 1
mov ebx, dword [rdx + rax*4 + 4]
test ebx, ebx
jne 0x14007475d
mov esi, eax
test rax, rax
jne 0x140074472
cmp byte [rbp + 0x1b], 0
mov r12d, dword [rsp + 0x30]
mov rdx, r13
mov rbx, qword [rsp + 0x4c0]
je 0x1400740c7
cmp qword [rbx + 0x80], 0
jne 0x1400740c7
mov rcx, rdx
call sub.msvcrt.dll_free
jmp 0x1400740c7
call fcn.14006d910
mov qword [rbp + 8], rax
mov r12, rax
test rax, rax
jne 0x140074074
jmp 0x1400740e1
mov r8d, 0x45a
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.c__sorted_entries__0
call qword [sym.imp.msvcrt.dll__assert]
mov eax, dword [rbp + 0x840]
test eax, eax
je 0x140073f30
lea edx, [rax*4 + 4]
mov rcx, rbx
call fcn.14006d910
mov qword [rbp + 0x830], rax
test rax, rax
je 0x1400740e1
mov eax, dword [rbp + 0x840]
mov rcx, rbx
lea edx, [rax*4 + 4]
call fcn.14006d910
test rax, rax
je 0x1400740d6
lea rdx, [rax + 4]
mov qword [rbp + 0x838], rdx
mov dword [rax], 0xffffffff
cmp byte [rbp + 0x1b], 0
je 0x1400745a3
mov r10, qword [rbp + 0x830]
xor r8d, r8d
jmp 0x14007457d
mov rax, qword [rbp + 0x28]
lea r9, [r10 + r8*4]
mov ecx, dword [rax + r8*4]
add r8, 1
call fcn.14006c500
mov dword [r9], eax
cmp dword [rbp + 0x840], r8d
jg 0x140074565
jmp 0x140074636
movzx ecx, byte [rdi]
mov rdx, qword [rbp + 8]
mov dword [rax], 0
mov byte [rdx], cl
mov dword [r13], r14d
jmp 0x140074404
xor r15d, r15d
xor esi, esi
lea r14, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rdi, str.len___NO_CODE
jmp 0x1400745c3
sub eax, 0xb
cmp al, 0xf3
jbe 0x1400745e9
add rsi, 1
cmp dword [rbp + 4], esi
jle 0x14007460c
cmp byte [rbp + 0x1b], 0
movzx eax, byte [r12 + rsi]
je 0x1400745b8
add al, 1
jne 0x1400745e9
mov r8d, 0x4a7
mov rdx, r14
mov rcx, rdi
call qword [sym.imp.msvcrt.dll__assert]
mov rax, qword [rbp + 0x830]
lea r8d, [r15 + 1]
lea r9, [rax + r15*4]
mov rax, qword [rbp + 0x28]
movsxd r15, r8d
mov ecx, dword [rax + rsi*4]
call fcn.14006c500
mov dword [r9], eax
jmp 0x1400745bf
cmp r15d, dword [rbp + 0x840]
je 0x14007462f
mov r8d, 0x4bb
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.k__c__sorted_entries
call qword [sym.imp.msvcrt.dll__assert]
mov r10, qword [rbp + 0x830]
movsxd rdx, dword [rbp + 0x840]
mov rcx, r10
lea r9, [0x14006c540]
mov r8d, 4
call sub.msvcrt.dll_qsort
movsxd rax, dword [rbp + 0x840]
mov r10, qword [rbp + 0x830]
mov dword [r10 + rax*4], 0xffffffff
cmp byte [rbp + 0x1b], 0
je 0x14007487c
mov r14d, dword [rbp + 0x840]
mov rdi, qword [sym.imp.msvcrt.dll__assert]
movzx eax, byte [rbp + 0x1b]
xor esi, esi
mov qword [rsp + 0x28], rdi
mov r15d, esi
cmp r14d, esi
jle 0x140073f30
test al, al
je 0x14007485e
mov eax, dword [r13 + rsi*4]
movzx edi, byte [r12 + rax]
cmp dil, 0xff
je 0x140074832
mov rax, qword [rbp + 0x28]
mov ecx, dword [rax + rsi*4]
call fcn.14006c500
mov edx, dword [rbp + 0x840]
mov r10, qword [rbp + 0x830]
mov ecx, eax
xor eax, eax
jmp 0x1400746ec
mov r8d, edx
sar r8d, 1
lea r9d, [r8 + rax]
movsxd r11, r9d
cmp ecx, dword [r10 + r11*4]
jae 0x14007479f
mov edx, r8d
cmp edx, 1
jg 0x1400746d2
lea r9, [rax*4]
cmp ecx, dword [r10 + rax*4]
je 0x14007472d
mov qword [rsp + 0x48], r9
mov r8d, 0x4d9
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.c__sorted_codewords_x___code
mov qword [rsp + 0x40], rax
call qword [sym.imp.msvcrt.dll__assert]
mov r9, qword [rsp + 0x48]
mov rax, qword [rsp + 0x40]
mov rdx, qword [rbp + 0x838]
add rdx, r9
cmp byte [rbp + 0x1b], 0
je 0x140074852
mov ecx, dword [r13 + rsi*4]
mov dword [rdx], ecx
mov rdx, qword [rbp + 8]
mov byte [rdx + rax], dil
movzx eax, byte [rbp + 0x1b]
add rsi, 1
jmp 0x14007468b
movsxd rax, esi
mov ecx, ebx
mov dword [rsp + rax*4 + 0x60], 0
lea eax, [r14 + 1]
mov dword [rsp + 0x40], eax
call fcn.14006c500
cmp byte [rbp + 0x1b], 0
mov rdx, qword [rbp + 0x28]
jne 0x140074807
mov dword [rdx + rdi*4], eax
movzx edx, byte [r12 + rdi]
cmp esi, edx
jne 0x1400747aa
movsxd r14, dword [rsp + 0x40]
add rdi, 1
jmp 0x140074449
sub edx, r8d
movsxd rax, r9d
jmp 0x1400746ec
mov dword [rsp + 0x48], r15d
mov r14d, 0x20
mov r15, r12
mov r12, rdi
mov edi, ebx
mov rbx, rdx
jmp 0x1400747dc
mov ecx, r14d
mov eax, 1
mov rdx, qword [rsp + 0x28]
sub ecx, ebx
shl eax, cl
add eax, edi
mov dword [rdx + rbx*4], eax
sub rbx, 1
cmp esi, ebx
jge 0x140074822
mov rax, qword [rsp + 0x28]
cmp dword [rax + rbx*4], 0
je 0x1400747c2
mov r8d, 0x478
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.available_y___0
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x1400747c2
movzx r8d, byte [r12 + rdi]
mov rcx, qword [rbp + 8]
mov dword [rdx + r14*4], eax
mov byte [rcx + r14], r8b
mov dword [r13 + r14*4], edi
jmp 0x140074788
mov rdi, r12
mov r12, r15
mov r15d, dword [rsp + 0x48]
jmp 0x140074791
mov rax, qword [rsp + 0x28]
mov r8d, 0x4a7
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.len___NO_CODE
call rax
jmp 0x1400746b3
mov dword [rdx], r15d
movzx eax, byte [rbp + 0x1b]
jmp 0x140074754
movzx edi, byte [r12 + rsi]
cmp dil, 0xa
jbe 0x140074754
cmp dil, 0xff
je 0x140074754
jmp 0x1400746b3
mov r14d, dword [rbp + 4]
jmp 0x140074679
mov r8d, 0x469
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.z___32
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x14007446d
mov dword [rsp + 0x40], r14d
jmp 0x140074791
mov rbx, qword [rsp + 0x4c0]
jmp 0x1400744f7
mov edx, 8
mov rcx, rbx
xor edi, edi
call fcn.14006f9a0
mov edx, 0x10
mov rcx, rbx
mov byte [rsi], al
call fcn.14006f9a0
mov edx, 0x10
mov rcx, rbx
mov word [rsi + 2], ax
call fcn.14006f9a0
mov edx, 6
mov rcx, rbx
mov word [rsi + 4], ax
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
mov byte [rsi + 6], al
call fcn.14006f9a0
mov edx, 4
mov rcx, rbx
mov byte [rsi + 7], al
call fcn.14006f9a0
add eax, 1
mov byte [rsi + 8], al
movzx eax, byte [rsi + 8]
cmp eax, edi
jle 0x140074964
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
mov byte [rsi + rdi + 9], al
add rdi, 1
jmp 0x140074921
mov r8d, dword [rbp + 0x1c]
add r8d, r8d
mov rdx, r14
mov rcx, rbx
call fcn.14006ce40
mov dword [rbx + 0x9c], 0x14
xor r12d, r12d
jmp 0x14007387f
mov dword [rbx + 0x9c], 4
xor r12d, r12d
jmp 0x14007387f
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
mov byte [rsi + r14 + 0x41], al
movzx eax, al
cmp eax, dword [rbx + 0xb0]
jl 0x1400742da
jmp 0x140074952
mov edx, 2
mov rcx, rbx
xor ebp, ebp
call fcn.14006f9a0
mov rcx, rbx
mov edx, 4
add eax, 1
mov byte [rsi + 0x634], al
call fcn.14006f9a0
mov word [rsi + 0x152], 0
mov ecx, eax
mov byte [rsi + 0x635], al
mov eax, 1
mov dword [rsi + 0x638], 2
shl eax, cl
mov word [rsi + 0x154], ax
movzx eax, byte [rsi]
cmp eax, ebp
jle 0x140074c23
movzx r14d, byte [rsi + rbp + 1]
xor r13d, r13d
jmp 0x140074a2f
movzx edx, byte [rsi + 0x635]
mov rcx, rbx
add r13d, 1
call fcn.14006f9a0
movsxd rdx, dword [rsi + 0x638]
mov r8d, eax
mov word [rsi + rdx*2 + 0x152], r8w
mov rax, rdx
add eax, 1
mov dword [rsi + 0x638], eax
movzx eax, byte [rsi + r14 + 0x21]
cmp r13d, eax
jl 0x1400749fd
add rbp, 1
jmp 0x1400749e7
mov r12d, dword [rsp + 0x28]
jmp 0x1400740c7
mov edx, 6
mov rcx, rbx
mov r12d, dword [rsp + 0x28]
call fcn.14006f9a0
mov rcx, rbx
add eax, 1
mov dword [rbx + 0x150], eax
shl eax, 5
mov edx, eax
call fcn.14006d910
mov qword [rbx + 0x1d8], rax
mov rcx, rax
test rax, rax
je 0x1400740e1
movsxd r8, dword [rbx + 0x150]
xor edx, edx
xor ebp, ebp
shl r8, 5
call sub.msvcrt.dll_memset
cmp dword [rbx + 0x150], ebp
jle 0x140074caf
mov rsi, rbp
mov edx, 0x10
mov rcx, rbx
shl rsi, 5
add rsi, qword [rbx + 0x1d8]
call fcn.14006f9a0
mov word [rbx + rbp*2 + 0x154], ax
cmp ax, 2
ja 0x140074c14
mov edx, 0x18
mov rcx, rbx
call fcn.14006f9a0
mov edx, 0x18
mov rcx, rbx
mov dword [rsi], eax
call fcn.14006f9a0
mov dword [rsi + 4], eax
cmp eax, dword [rsi]
jb 0x140074c14
mov edx, 0x18
mov rcx, rbx
call fcn.14006f9a0
mov edx, 6
mov rcx, rbx
add eax, 1
mov dword [rsi + 8], eax
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
add eax, 1
mov byte [rsi + 0xc], al
call fcn.14006f9a0
mov byte [rsi + 0xd], al
movzx eax, al
cmp eax, dword [rbx + 0xb0]
jge 0x140074c14
xor edi, edi
movzx eax, byte [rsi + 0xc]
cmp eax, edi
jle 0x140074b8b
mov edx, 3
mov rcx, rbx
call fcn.14006f9a0
mov edx, 1
mov rcx, rbx
mov r13d, eax
call fcn.14006f9a0
mov r8d, eax
xor eax, eax
test r8d, r8d
je 0x140074b7c
mov edx, 5
mov rcx, rbx
call fcn.14006f9a0
lea eax, [r13 + rax*8]
mov byte [rsp + rdi + 0x60], al
add rdi, 1
jmp 0x140074b40
shl eax, 4
mov rcx, rbx
mov edx, eax
call fcn.14006d910
mov qword [rsi + 0x18], rax
test rax, rax
je 0x1400740e1
xor r13d, r13d
movzx eax, byte [rsi + 0xc]
cmp eax, r13d
jle 0x140074f8d
mov r14, r13
xor edi, edi
lea r15, [rsp + 0x60]
shl r14, 4
movzx eax, byte [r15 + r13]
mov ecx, edi
sar eax, cl
test al, 1
jne 0x140074bef
movsxd rax, edi
add rax, rax
add rax, qword [rsi + 0x18]
mov word [rax + r14], 0xffff
add edi, 1
cmp edi, 8
jne 0x140074bc3
add r13, 1
jmp 0x140074ba8
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
movsxd rdx, edi
add rdx, rdx
add rdx, qword [rsi + 0x18]
mov word [rdx + r14], ax
cwde
cmp eax, dword [rbx + 0xb0]
jl 0x140074be1
mov dword [rbx + 0x9c], 0x14
jmp 0x1400740eb
movsxd rdx, dword [rsi + 0x638]
xor eax, eax
cmp edx, eax
jle 0x140075174
movzx ecx, word [rsi + rax*2 + 0x152]
mov word [rdi + rax*4 + 2], ax
mov word [rdi + rax*4], cx
add rax, 1
jmp 0x140074c2c
mov edx, r13d
mov rcx, rbx
call fcn.14006d910
mov qword [rbp + 8], rax
test rax, rax
je 0x1400740e1
mov eax, dword [rbp + 0x840]
mov rcx, rbx
lea edx, [rax*4]
call fcn.14006d8c0
mov qword [rbp + 0x28], rax
test rax, rax
je 0x1400740e1
mov eax, dword [rbp + 0x840]
mov rcx, rbx
lea edx, [rax*4]
call fcn.14006d8c0
mov r13, rax
test rax, rax
je 0x1400740e1
mov r15d, dword [rbp + 4]
jmp 0x1400743a3
mov edx, 6
mov rcx, rbx
call fcn.14006f9a0
mov rcx, rbx
add eax, 1
mov dword [rbx + 0x1e0], eax
imul edx, eax, 0x30
call fcn.14006d910
mov qword [rbx + 0x1e8], rax
mov rcx, rax
test rax, rax
je 0x1400740e1
movsxd r8, dword [rbx + 0x1e0]
xor edx, edx
xor edi, edi
imul r8, r8, 0x30
call sub.msvcrt.dll_memset
cmp dword [rbx + 0x1e0], edi
jle 0x140074ef3
mov edx, 0x10
imul rsi, rdi, 0x30
mov rcx, rbx
add rsi, qword [rbx + 0x1e8]
call fcn.14006f9a0
test eax, eax
jne 0x1400740c7
imul edx, dword [rbx + 4], 3
mov rcx, rbx
call fcn.14006d910
mov qword [rsi + 8], rax
test rax, rax
je 0x1400740e1
mov edx, 1
mov rcx, rbx
call fcn.14006f9a0
test eax, eax
jne 0x140074edb
mov byte [rsi + 0x10], 1
mov edx, 1
mov rcx, rbx
call fcn.14006f9a0
test eax, eax
jne 0x140074e39
mov word [rsi], 0
mov edx, 2
mov rcx, rbx
call fcn.14006f9a0
test eax, eax
jne 0x1400740c7
xor ebp, ebp
xor eax, eax
cmp byte [rsi + 0x10], 1
mov ecx, dword [rbx + 4]
jbe 0x140074e23
cmp dword [rbx + 4], ebp
jle 0x140074dc1
mov edx, 4
mov rcx, rbx
call fcn.14006f9a0
lea rdx, [rbp + rbp*2]
add rdx, qword [rsi + 8]
add rbp, 1
mov byte [rdx + 2], al
cmp al, byte [rsi + 0x10]
jb 0x140074d95
jmp 0x1400740c7
xor ebp, ebp
movzx eax, byte [rsi + 0x10]
cmp eax, ebp
jle 0x140074ed2
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
mov byte [rsi + rbp + 0x11], al
call fcn.14006f9a0
movzx edx, byte [rsi + rbp + 0x11]
mov byte [rsi + rbp + 0x20], al
cmp edx, dword [rbx + 0xc0]
jge 0x1400740c7
add rbp, 1
movzx eax, al
cmp eax, dword [rbx + 0x150]
jl 0x140074dc3
jmp 0x1400740c7
cmp ecx, eax
jle 0x140074dc1
lea rdx, [rax + rax*2]
add rdx, qword [rsi + 8]
add rax, 1
mov byte [rdx + 2], 0
jmp 0x140074e23
mov edx, 8
mov rcx, rbx
call fcn.14006f9a0
add eax, 1
mov word [rsi], ax
movzx eax, ax
cmp eax, dword [rbx + 4]
jg 0x1400740c7
xor r13d, r13d
movzx eax, word [rsi]
cmp eax, r13d
jle 0x140074d6f
mov eax, dword [rbx + 4]
lea rbp, [r13 + r13*2]
lea ecx, [rax - 1]
call fcn.14006d9b0
mov rcx, rbx
mov edx, eax
call fcn.14006f9a0
mov rdx, qword [rsi + 8]
mov byte [rdx + rbp], al
mov eax, dword [rbx + 4]
lea ecx, [rax - 1]
call fcn.14006d9b0
mov rcx, rbx
mov edx, eax
call fcn.14006f9a0
add rbp, qword [rsi + 8]
mov byte [rbp + 1], al
movzx r8d, byte [rbp]
mov ecx, dword [rbx + 4]
mov edx, r8d
cmp r8d, ecx
jge 0x1400740c7
movzx r8d, al
cmp ecx, r8d
jle 0x1400740c7
add r13, 1
cmp al, dl
jne 0x140074e5b
jmp 0x1400740c7
add rdi, 1
jmp 0x140074cf7
mov edx, 4
mov rcx, rbx
call fcn.14006f9a0
add eax, 1
mov byte [rsi + 0x10], al
jmp 0x140074d55
mov edx, 6
mov rcx, rbx
lea rsi, [rbx + 0x1f4]
xor edi, edi
call fcn.14006f9a0
add eax, 1
mov dword [rbx + 0x1f0], eax
cmp edi, dword [rbx + 0x1f0]
jge 0x140075078
mov edx, 1
mov rcx, rbx
call fcn.14006f9a0
mov edx, 0x10
mov rcx, rbx
mov byte [rsi], al
call fcn.14006f9a0
mov edx, 0x10
mov rcx, rbx
mov word [rsi + 2], ax
call fcn.14006f9a0
mov edx, 8
mov rcx, rbx
mov word [rsi + 4], ax
call fcn.14006f9a0
cmp word [rsi + 2], 0
mov byte [rsi + 1], al
jne 0x1400740c7
cmp word [rsi + 4], 0
jne 0x1400740c7
add rsi, 6
movzx eax, al
cmp eax, dword [rbx + 0x1e0]
jge 0x1400740c7
add edi, 1
jmp 0x140074f12
movzx eax, byte [rsi + 0xd]
mov rcx, rbx
imul rax, rax, 0x848
add rax, qword [rbx + 0xb8]
mov edx, dword [rax + 4]
shl edx, 3
call fcn.14006d910
mov qword [rsi + 0x10], rax
mov rcx, rax
test rax, rax
je 0x1400740e1
movzx eax, byte [rsi + 0xd]
xor edx, edx
xor edi, edi
imul rax, rax, 0x848
add rax, qword [rbx + 0xb8]
movsxd r8, dword [rax + 4]
shl r8, 3
call sub.msvcrt.dll_memset
movzx eax, byte [rsi + 0xd]
mov r13d, edi
imul rax, rax, 0x848
add rax, qword [rbx + 0xb8]
cmp dword [rax + 4], edi
jle 0x14007513c
mov r14d, dword [rax]
mov r8, qword [rsi + 0x10]
lea r15, [rdi*8]
mov rcx, rbx
add r8, r15
mov edx, r14d
mov qword [rsp + 0x28], r8
call fcn.14006d910
mov r8, qword [rsp + 0x28]
mov qword [r8], rax
mov rax, qword [rsi + 0x10]
cmp qword [rax + rdi*8], 0
je 0x1400740e1
xor ecx, ecx
movsxd r9, r14d
add rcx, 1
cmp r14d, ecx
js 0x140075133
mov rax, qword [rsi + 0x10]
movzx r8d, byte [rsi + 0xc]
mov r10, r9
sub r10, rcx
mov r11, qword [rax + r15]
mov eax, r13d
cdq
idiv r8d
mov eax, r13d
mov byte [r11 + r10], dl
movzx r8d, byte [rsi + 0xc]
cdq
idiv r8d
mov r13d, eax
jmp 0x14007503c
mov rcx, rbx
call fcn.14006f8d0
add eax, 1
jne 0x140075078
mov dword [rbx + 0x4f8], 0
mov esi, dword [rsp + 0x30]
xor edi, edi
add esi, esi
cmp dword [rbx + 4], edi
jle 0x140075580
mov eax, dword [rbx + 0xac]
mov rcx, rbx
lea edx, [rax*4]
call fcn.14006d910
movsxd rdx, dword [rbx + 0xac]
mov rcx, rbx
mov qword [rbx + rdi*8 + 0x378], rax
shl rdx, 2
shr rdx, 1
call fcn.14006d910
mov rcx, rbx
mov edx, esi
mov qword [rbx + rdi*8 + 0x478], rax
call fcn.14006d910
mov rcx, qword [rbx + rdi*8 + 0x378]
mov qword [rbx + rdi*8 + 0x500], rax
test rcx, rcx
je 0x1400740e1
cmp qword [rbx + rdi*8 + 0x478], 0
sete dl
test rax, rax
sete al
add rdi, 1
or dl, al
jne 0x1400740e1
movsxd r8, dword [rbx + 0xac]
xor edx, edx
shl r8, 2
call sub.msvcrt.dll_memset
jmp 0x140075097
add rdi, 1
jmp 0x140074fe0
add rbp, 1
jmp 0x140074a99
mov edx, 4
mov rcx, rbx
call fcn.14006f9a0
mov byte [rbp + 0x19], al
cmp al, 2
ja 0x1400740c2
test al, al
jne 0x1400751b1
add qword [rsp + 0x38], 1
jmp 0x140073d2b
mov eax, dword [rbp + 4]
jmp 0x140073fbd
mov rcx, rdi
lea r9, [0x14006c560]
mov r8d, 4
call sub.msvcrt.dll_qsort
mov ecx, dword [rsi + 0x638]
xor eax, eax
lea edx, [rcx - 1]
cmp edx, eax
jle 0x1400752a1
movzx r8d, word [rdi + rax*4]
add rax, 1
cmp r8w, word [rdi + rax*4]
jne 0x140075194
jmp 0x140074952
mov edx, 0x20
mov rcx, rbx
call fcn.14006f9a0
mov ecx, eax
call fcn.14006d960
mov edx, 0x20
mov rcx, rbx
movss dword [rbp + 0x10], xmm0
call fcn.14006f9a0
mov ecx, eax
call fcn.14006d960
mov edx, 4
mov rcx, rbx
movss dword [rbp + 0x14], xmm0
call fcn.14006f9a0
mov edx, 1
mov rcx, rbx
add eax, 1
mov byte [rbp + 0x18], al
call fcn.14006f9a0
cmp byte [rbp + 0x19], 1
mov byte [rbp + 0x1a], al
je 0x140075346
mov eax, dword [rbp + 4]
imul eax, dword [rbp]
mov dword [rbp + 0x1c], eax
mov eax, dword [rbp + 0x1c]
test eax, eax
je 0x1400740c2
lea edx, [rax + rax]
mov rcx, rbx
call fcn.14006d8c0
mov r14, rax
test rax, rax
je 0x1400740e1
xor esi, esi
jmp 0x14007525e
movzx edx, byte [rbp + 0x18]
mov rcx, rbx
call fcn.14006f9a0
cmp eax, 0xffffffff
je 0x140074940
mov word [r14 + rsi*2], ax
add rsi, 1
mov r15d, dword [rbp + 0x1c]
cmp r15d, esi
jg 0x140075240
cmp byte [rbp + 0x19], 1
jne 0x14007551d
movzx r12d, byte [rbp + 0x1b]
test r12d, r12d
je 0x1400754f2
mov eax, dword [rbp + 0x840]
test eax, eax
jne 0x140075425
lea r8d, [r15 + r15]
mov rdx, r14
mov rcx, rbx
call fcn.14006ce40
jmp 0x140075161
xor eax, eax
cmp ecx, eax
jle 0x1400752b9
movzx edx, word [rdi + rax*4 + 2]
mov byte [rsi + rax + 0x346], dl
add rax, 1
jmp 0x1400752a3
mov eax, 2
mov r14d, eax
cmp ecx, eax
jle 0x140075330
xor r9d, r9d
xor r10d, r10d
xor edx, edx
mov ebp, 0x10000
or r11d, 0xffffffff
movzx r8d, word [rsi + rdx*2 + 0x152]
mov r15d, edx
mov r13d, r8d
cmp r8d, r11d
jle 0x1400752fb
cmp r8w, word [rsi + rax*2 + 0x152]
cmovb r10d, edx
cmovb r11d, r8d
cmp r8d, ebp
jge 0x140075311
cmp r13w, word [rsi + rax*2 + 0x152]
cmova r9d, r15d
cmova ebp, r8d
add rdx, 1
cmp r14d, edx
jg 0x1400752d6
mov byte [rsi + rax*2 + 0x440], r10b
mov byte [rsi + rax*2 + 0x441], r9b
add rax, 1
jmp 0x1400752be
mov eax, dword [rsp + 0x30]
cmp eax, ecx
cmovge ecx, eax
add r12, 1
mov dword [rsp + 0x30], ecx
jmp 0x14007421e
mov esi, dword [rbp + 4]
pxor xmm0, xmm0
mov edi, dword [rbp]
pxor xmm6, xmm6
cvtsi2ss xmm0, esi
cvtss2sd xmm0, xmm0
call fcn.14009d3b0
pxor xmm1, xmm1
cvtsi2ss xmm1, edi
cvtsd2ss xmm0, xmm0
divss xmm0, xmm1
cvtss2sd xmm0, xmm0
call fcn.14009cef0
call fcn.14009d120
movss xmm7, dword [0x1400b00b0]
pxor xmm1, xmm1
cvttsd2si r12d, xmm0
cvtsi2sd xmm1, edi
cvtsi2ss xmm6, r12d
movsd qword [rsp + 0x28], xmm1
movaps xmm0, xmm6
addss xmm0, xmm7
cvtss2sd xmm0, xmm0
call fcn.14009d570
call fcn.14009d120
movsd xmm1, qword [rsp + 0x28]
cvttsd2si eax, xmm0
cmp esi, eax
jl 0x1400753cf
add r12d, 1
pxor xmm6, xmm6
cvtsi2ss xmm6, r12d
addss xmm7, xmm6
pxor xmm0, xmm0
movsd qword [rsp + 0x28], xmm1
cvtss2sd xmm0, xmm7
call fcn.14009d570
pxor xmm2, xmm2
cvtsi2sd xmm2, esi
comisd xmm2, xmm0
jae 0x1400740c2
movsd xmm1, qword [rsp + 0x28]
pxor xmm0, xmm0
cvtss2sd xmm0, xmm6
call fcn.14009d570
call fcn.14009d120
cvttsd2si eax, xmm0
cmp esi, eax
jl 0x1400740c2
mov dword [rbp + 0x1c], r12d
jmp 0x14007521a
imul eax, dword [rbp]
mov rcx, rbx
lea edx, [rax*4]
call fcn.14006d910
mov qword [rbp + 0x20], rax
mov rcx, rax
test rax, rax
je 0x1400756cc
mov r13d, dword [rbp + 0x840]
mov r15d, dword [rbp + 0x1c]
xor r9d, r9d
pxor xmm1, xmm1
cmp r13d, r9d
jle 0x1400756ba
mov eax, r9d
mov edi, r9d
test r12d, r12d
je 0x140075479
mov rdx, qword [rbp + 0x838]
mov edi, dword [rdx + r9*4]
mov esi, dword [rbp]
xor r10d, r10d
mov r8d, 1
imul eax, esi
cdqe
lea r11, [rcx + rax*4]
jmp 0x1400754e4
xor edx, edx
mov eax, edi
pxor xmm0, xmm0
div r8d
xor edx, edx
div r15d
movsxd rdx, edx
movzx eax, word [r14 + rdx*2]
cvtsi2ss xmm0, eax
mulss xmm0, dword [rbp + 0x14]
addss xmm0, dword [rbp + 0x10]
addss xmm0, xmm1
movss dword [r11], xmm0
cmp byte [rbp + 0x1a], 0
je 0x1400754c8
movaps xmm1, xmm0
add r10d, 1
cmp esi, r10d
jle 0x1400754e0
mov eax, r8d
mul r15d
mov r8d, eax
jo 0x1400756c3
add r11, 4
cmp esi, r10d
jg 0x140075490
add r9, 1
jmp 0x14007545a
mov edx, dword [rbp]
imul edx, dword [rbp + 4]
mov rcx, rbx
shl edx, 2
call fcn.14006d910
mov qword [rbp + 0x20], rax
mov rcx, rax
test rax, rax
je 0x1400756cc
mov r13d, dword [rbp + 4]
jmp 0x14007544f
lea edx, [r15*4]
mov rcx, rbx
call fcn.14006d910
mov qword [rbp + 0x20], rax
mov rdx, rax
test rax, rax
je 0x1400756cc
mov r15d, dword [rbp + 0x1c]
xor eax, eax
pxor xmm1, xmm1
jmp 0x140075576
movzx ecx, word [r14 + rax*2]
pxor xmm0, xmm0
cvtsi2ss xmm0, ecx
mulss xmm0, dword [rbp + 0x14]
addss xmm0, dword [rbp + 0x10]
addss xmm0, xmm1
movss dword [rdx + rax*4], xmm0
cmp byte [rbp + 0x1a], 0
je 0x140075572
movaps xmm1, xmm0
add rax, 1
cmp r15d, eax
jg 0x140075549
jmp 0x14007528d
mov r8d, dword [rbx + 0xa8]
xor edx, edx
mov rcx, rbx
call fcn.14006f060
test eax, eax
je 0x14007387f
mov r8d, dword [rbx + 0xac]
mov edx, 1
mov rcx, rbx
call fcn.14006f060
test eax, eax
je 0x14007387f
mov ecx, dword [rbx + 0xac]
mov r9d, 2
xor r10d, r10d
mov rax, qword [rbx + 0xa8]
mov r11d, dword [rbx + 0x150]
mov qword [rbx + 0xa0], rax
movsxd rax, ecx
shl rax, 2
shr rax, 1
mov r8, rax
mov eax, ecx
cdq
idiv r9d
xor r9d, r9d
mov ecx, eax
cmp r11d, r10d
jle 0x140075638
mov rdx, r10
mov rdi, qword [rbx + 0x1d8]
mov eax, ecx
mov esi, ecx
shl rdx, 5
add rdi, rdx
cmp dword [rdi + 4], ecx
cmovbe eax, dword [rdi + 4]
cmp dword [rdi], ecx
cmovbe esi, dword [rdi]
xor edx, edx
sub eax, esi
div dword [rdi + 8]
cmp r9d, eax
cmovl r9d, eax
add r10, 1
jmp 0x1400755f1
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + r8*4]
jmp 0x14007401d
lea eax, [r9 + 1]
imul eax, dword [rbx + 4]
shl eax, 3
cmp eax, r8d
cmovb eax, r8d
cmp qword [rbx + 0x80], 0
mov dword [rbx + 0xc], eax
je 0x1400756a0
mov eax, dword [rbx + 0x88]
cmp dword [rbx + 0x94], eax
je 0x14007567f
mov r8d, 0x106f
lea rdx, str.C:Usersexelotl_nimcachexatu_d_mstb_vorbis.nim.c
lea rcx, str.f__temp_offset__f__alloc.alloc_buffer_length_in_bytes
call qword [sym.imp.msvcrt.dll__assert]
mov eax, dword [rbx + 0xc]
movsxd rdx, dword [rbx + 0x90]
lea rdx, [rdx + rax + 0x770]
mov eax, dword [rbx + 0x94]
cmp rdx, rax
ja 0x1400740e1
cmp dword [rbx + 0x6e8], 0xffffffff
je 0x1400756f0
mov dword [rbx + 0x60], 0
mov r12d, dword [rsp + 0x34]
jmp 0x14007387f
mov byte [rbp + 0x19], 2
jmp 0x14007528d
lea r8d, [r15 + r15]
jmp 0x140074947
mov r8d, dword [rbp + 0x1c]
mov rdx, r14
mov rcx, rbx
xor r12d, r12d
add r8d, r8d
call fcn.14006ce40
mov dword [rbx + 0x9c], 3
jmp 0x14007387f
mov rcx, rbx
call fcn.1400737f0
mov r12d, dword [rsp + 0x34]
mov dword [rbx + 0x60], eax
jmp 0x14007387f
push r12
sub rsp, 0x20
mov byte [rcx + 0x6e5], 1
mov r12, rcx
call fcn.14006f610
test eax, eax
je 0x14007575c
movzx eax, byte [r12 + 0x6e3]
test al, 2
je 0x140075750
test al, 5
jne 0x140075750
mov rcx, r12
add rsp, 0x20
pop r12
jmp 0x140073830
mov dword [r12 + 0x9c], 0x22
xor eax, eax
add rsp, 0x20
pop r12
ret