Function at 0x7ff71ccb390
Capabilities:
Get file size

Disassembly:
test r9b, 0x20
jne 0x7ff71ccccec
test r9b, 0x40
jne 0x7ff71ccccf3
xor r12d, r12d
xor ebp, ebp
jmp 0x7ff71ccb3dc
lea rsi, [rbx + 8]
mov r8d, 4
mov rcx, rdi
mov rdx, rsi
call sym.WINMM.dll_mmioRead
cmp eax, 4
je 0x7ff71ccb4b9
jmp 0x7ff71cccdbf
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x20
or esi, 0xffffffff
mov r14, r8
mov rbx, rdx
mov rdi, rcx
mov r13d, esi
test r9d, 0xffffff8f
jne 0x7ff71ccccda
test rdx, rdx
je 0x7ff71cccce4
test r9b, 0x10
je 0x7ff71ccb209
mov ebp, dword [rdx]
xor r12d, r12d
jmp 0x7ff71ccb3dc
and dword [rdx + 0x10], 0
test rcx, rcx
je 0x7ff71cccd01
cmp dword [rcx + 4], 0x20534f44
je 0x7ff71cccd0b
mov r8d, 8
mov rdx, rbx
mov rcx, rdi
call sym.WINMM.dll_mmioRead
cmp eax, 8
jne 0x7ff71cccdbf
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 1]
call sym.WINMM.dll_mmioSeek
mov r11d, eax
mov dword [rbx + 0xc], eax
cmp eax, esi
je 0x7ff71cccdb5
cmp dword [rbx], 0x6b72544d
je 0x7ff71cccd1f
cmp dword [rbx], 0x6468544d
je 0x7ff71cccd1f
mov r8d, dword [rbx + 4]
jmp 0x7ff71ccb44a
cmp r11d, 8
jb 0x7ff71cccdbf
lea eax, [r11 + r8]
lea r9d, [r11 - 8]
cmp eax, r11d
jb 0x7ff71cccdbf
test r14, r14
je 0x7ff71ccb48f
mov ecx, dword [r14 + 0xc]
mov eax, dword [r14 + 4]
lea edx, [rcx + rax]
cmp edx, ecx
jb 0x7ff71cccdbf
cmp r9d, ecx
jb 0x7ff71cccdbf
cmp r9d, edx
jae 0x7ff71cccdbf
cmp r13d, esi
jne 0x7ff71cccd50
cmp dword [rbx], 0x46464952
je 0x7ff71ccb35d
cmp dword [rbx], 0x5453494c
je 0x7ff71ccb35d
lea rsi, [rbx + 8]
and dword [rsi], 0
jmp 0x7ff71ccb4b9
test ebp, ebp
je 0x7ff71ccb4f3
cmp ebp, dword [rbx]
je 0x7ff71ccb4f3
xor r8d, r8d
mov rdx, rbx
mov rcx, rdi
call sym.WINMM.dll_mmioAscend
test eax, eax
jne 0x7ff71ccb500
lea r8d, [rax + 8]
mov rdx, rbx
mov rcx, rdi
call sym.WINMM.dll_mmioRead
cmp eax, 8
jne 0x7ff71cccdbf
or esi, 0xffffffff
jmp 0x7ff71ccb410
test r12d, r12d
jne 0x7ff71cccda7
xor eax, eax
jmp 0x7ff71ccb500
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x20
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
mov eax, 0xa
jmp 0x7ff71ccb500
lea eax, [rdx + 0xb]
jmp 0x7ff71ccb500
mov ebp, 0x46464952
jmp 0x7ff71ccccf8
mov ebp, 0x5453494c
mov r12d, dword [rdx + 8]
jmp 0x7ff71ccb3dc
mov eax, 0x102
jmp 0x7ff71ccb500
movsxd rcx, dword [rcx + 0x48]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov r13d, eax
jmp 0x7ff71ccb3f6
mov ecx, dword [rbx + 4]
mov r8d, ecx
mov eax, ecx
shr eax, 0x10
and r8d, 0xff0000
or r8d, eax
mov eax, ecx
and ecx, 0xff00
shl eax, 0x10
shr r8d, 8
or eax, ecx
shl eax, 8
or r8d, eax
jmp 0x7ff71ccb44a
cmp r13d, r11d
jb 0x7ff71cccdbf
mov ecx, r13d
sub ecx, r11d
cmp r8d, ecx
jbe 0x7ff71ccb498
cmp dword [rbx], 0x6b72544d
je 0x7ff71cccd7c
cmp dword [rbx], 0x6468544d
je 0x7ff71cccd7c
mov dword [rbx + 4], ecx
jmp 0x7ff71ccb498
mov eax, ecx
mov byte [rsp + 0x6b], cl
shr eax, 0x18
mov byte [rsp + 0x68], al
mov eax, ecx
shr eax, 0x10
mov byte [rsp + 0x69], al
mov eax, ecx
shr eax, 8
mov byte [rsp + 0x6a], al
mov eax, dword [rsp + 0x68]
mov dword [rbx + 4], eax
jmp 0x7ff71ccb498
cmp r12d, dword [rsi]
jne 0x7ff71ccb4c1
jmp 0x7ff71ccb4fc
mov eax, 0x107
jmp 0x7ff71ccb500
mov eax, 0x109
jmp 0x7ff71ccb500