Function at 0x1800b3740
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov qword [rax - 0x58], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov r14, r9
mov r15, rdx
mov r13, rcx
xor ebx, ebx
mov qword [rcx], rbx
add rcx, 8
call fcn.18001c640
nop
mov qword [0x1803d05d0], rbx
lea rdx, [0x1802c5dd8]
lea rcx, [r13 + 8]
call fcn.18001c7f0
call fcn.1800b3fc0
test al, al
je 0x1800b3e1a
mov qword [rsp + 0x20], rbx
xor r9d, r9d
mov edx, 0xac44
xor ecx, ecx
mov r8d, 0x8000
call qword [0x1803d05f8]
test eax, eax
jne 0x1800b37d0
call qword [0x1803d0638]
cmp eax, 0xe
jne 0x1800b3e1a
mov qword [rsp + 0x20], rbx
xor r9d, r9d
lea edx, [r9 + 2]
mov ecx, 0xac44
mov r8d, 0x200000
call qword [0x1803d0608]
mov dword [r13], eax
movzx eax, byte [r15 + 0x11]
cmp al, 4
jne 0x1800b38c4
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov r9, rax
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
mov r8d, dword [r15 + 0xc]
lea rdx, str.__compression_level__i___tag_TITLE_ls____tag_ARTIST_ls____tag_COMMENT_ls____tag_YEAR_ls____tag_GENRE_ls_
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
lea rcx, [rsp + 0x58]
call fcn.18001c780
lea rcx, str.bassenc_flac.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1803d05d0], rax
test rax, rax
je 0x1800b3e1a
lea rdx, str.BASS_Encode_FLAC_StartFile
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1803d06a8], rax
mov dword [0x1803d05d8], 4
jmp 0x1800b3e1a
cmp al, 2
jne 0x1800b3a26
movzx eax, byte [r15 + 0x10]
cmp al, 1
jne 0x1800b3952
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov r9, rax
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
mov r8d, dword [r15]
lea rdx, str._b__i___managed___title___ls____album______artist___ls____comment___ls____date___ls____tg___ls_
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
jmp 0x1800b39d9
test al, al
jne 0x1800b39e3
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
mov r9d, dword [r15 + 8]
mov r8d, dword [r15 + 4]
lea rdx, str._m__i__M__i___title___ls____album______artist___ls____comment___ls____date___ls____tg___ls_
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
lea rcx, [rsp + 0x58]
call fcn.18001c780
lea rcx, str.bassenc_ogg.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1803d05d0], rax
test rax, rax
je 0x1800b3e1a
lea rdx, str.BASS_Encode_OGG_StartFile
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1803d0690], rax
mov dword [0x1803d05d8], 2
jmp 0x1800b3e1a
test al, al
jne 0x1800b3c0b
movzx eax, byte [r15 + 0x10]
cmp al, 1
jne 0x1800b3ab4
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov r9, rax
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
mov r8d, dword [r15]
lea rdx, str._b__i___tt___ls____ta___ls____tl______ty___ls____tc___ls____tg___ls____id3v2_only___ignore_tag_errors
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
jmp 0x1800b3bc0
test al, al
jne 0x1800b3b40
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
mov r9d, dword [r15 + 8]
mov r8d, dword [r15 + 4]
lea rdx, str._V_0__v___vbr_new__b__i__B__i___tt___ls____ta___ls____tl______ty___ls____tc___ls____tg___ls____id3v2_only___ignore_tag_errors
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
jmp 0x1800b3bc0
cmp al, 2
jne 0x1800b3bcc
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov r9, rax
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
mov r8d, dword [r15]
lea rdx, str.__abr__i___tt___ls____ta___ls____tl______ty___ls____tc___ls____tg___ls____id3v2_only___ignore_tag_errors
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
lea rcx, [rsp + 0x58]
call fcn.18001c780
xor ebx, ebx
lea rcx, str.bassenc_mp3.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1803d05d0], rax
test rax, rax
je 0x1800b3e1a
lea rdx, str.BASS_Encode_MP3_StartFile
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1803d0688], rax
mov dword [0x1803d05d8], ebx
jmp 0x1800b3e1a
cmp al, 1
jne 0x1800b3cb8
movzx eax, byte [r15 + 0x10]
cmp al, 1
jne 0x1800b3c44
imul r8d, dword [r15], 0x3e8
lea rdx, str.__vbr_0___bitrate__i
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
jmp 0x1800b3c6b
test al, al
jne 0x1800b3c75
mov r8d, dword [r15 + 0xc]
lea rdx, str.__vbr__i
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
lea rcx, [rsp + 0x58]
call fcn.18001c780
lea rcx, str.bassenc_aac.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1803d05d0], rax
test rax, rax
je 0x1800b3e1a
lea rdx, str.BASS_Encode_AAC_StartFile
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1803d06a0], rax
mov dword [0x1803d05d8], 1
jmp 0x1800b3e1a
cmp al, 3
jne 0x1800b3e1a
movzx eax, byte [r15 + 0x10]
cmp al, 1
jne 0x1800b3d50
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
mov r9d, dword [r15 + 0xc]
mov r8d, dword [r15]
lea rdx, str.__cvbr___bitrate__i___comp__i___title___ls____album______artist___ls____comment___ls____date___ls____tg___ls_
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
jmp 0x1800b3dd6
test al, al
jne 0x1800b3de0
lea rcx, [r14 + 0xa8]
call fcn.18001cd10
mov rbp, rax
lea rcx, [r14 + 0xc0]
call fcn.18001cd10
mov rsi, rax
lea rcx, [r14 + 0x78]
call fcn.18001cd10
mov rdi, rax
lea rcx, [r14 + 0x18]
call fcn.18001cd10
mov rbx, rax
lea rcx, [r14 + 0x48]
call fcn.18001cd10
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
mov r9d, dword [r15 + 0xc]
mov r8d, dword [r15]
lea rdx, str.__cvbr___bitrate__i___comp__i___title___ls____album______artist___ls____comment___ls____date___ls____tg___ls_
lea rcx, [rsp + 0x58]
call fcn.18001df70
nop
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001c7b0
nop
lea rcx, [rsp + 0x58]
call fcn.18001c780
lea rcx, str.bassenc_opus.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1803d05d0], rax
test rax, rax
je 0x1800b3e1a
lea rdx, str.BASS_Encode_OPUS_StartFile
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1803d0698], rax
mov dword [0x1803d05d8], 3
lea rcx, [r14 + 0xc0]
call fcn.18001c780
lea rcx, [r14 + 0xa8]
call fcn.18001c780
lea rcx, [r14 + 0x90]
call fcn.18001c780
lea rcx, [r14 + 0x78]
call fcn.18001c780
lea rcx, [r14 + 0x60]
call fcn.18001c780
lea rcx, [r14 + 0x48]
call fcn.18001c780
lea rcx, [r14 + 0x30]
call fcn.18001c780
lea rcx, [r14 + 0x18]
call fcn.18001c780
mov rcx, r14
call fcn.18001c780
mov rax, r13
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret