Function at 0x43cf60
Capabilities:
Check for time delay via queryperformancecounter
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x4658c
call fcn.0057d7c0
mov eax, dword [0x5eae84]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x60de70], 0
jne 0x43cf90
xor al, al
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0057d22e
mov esp, ebp
pop ebp
ret
cmp dword [0x60de90], 0
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
jne 0x43cfa7
push 0x60df58
call ebx
push edi
lea eax, [ebp - 0x46530]
push eax
call ebx
mov ecx, dword [0x60de90]
mov edi, dword [sym.imp.MSVCR110.dll_printf]
mov eax, 0x91a2b3c5
mul ecx
shr edx, 9
imul edx, edx, 0x384
sub ecx, edx
jne 0x43cfed
push str.resyncing_audio_n
call edi
add esp, 4
cmp dword [0x60de94], 0
je 0x43cfed
lea eax, [ebp - 0x46544]
push eax
call ebx
cmp byte [0x60df48], 0
jne 0x43d21d
mov ecx, dword [ebp - 0x46530]
sub ecx, dword [0x60df58]
mov eax, dword [ebp - 0x4652c]
sbb eax, dword [0x60df5c]
mov dword [ebp - 0x46514], ecx
mov dword [ebp - 0x46510], eax
fild qword [ebp - 0x46514]
push 0
push 0x3e8
fstp qword [ebp - 0x4650c]
fld qword [ebp - 0x4650c]
fstp qword [ebp - 0x4650c]
movsd xmm2, qword [ebp - 0x4650c]
fild qword [0x60df50]
fstp qword [ebp - 0x4650c]
fld qword [ebp - 0x4650c]
mov eax, dword [0x60de90]
fstp qword [ebp - 0x4650c]
push dword [0x60df54]
movsd xmm1, qword [ebp - 0x4650c]
divsd xmm1, qword [0x60df38]
push dword [0x60df50]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5c6a60]
mulsd xmm1, xmm0
subsd xmm2, xmm1
movsd qword [ebp - 0x46528], xmm2
call fcn.0057d640
movsd xmm0, qword [ebp - 0x46528]
mov dword [ebp - 0x46514], eax
mov dword [ebp - 0x46510], edx
fild qword [ebp - 0x46514]
fstp qword [ebp - 0x4650c]
fld qword [ebp - 0x4650c]
fstp qword [ebp - 0x4650c]
divsd xmm0, qword [ebp - 0x4650c]
comisd xmm0, xmmword [0x58d4e8]
jbe 0x43d21d
sub esp, 8
movsd qword [esp], xmm0
push str.LAG:__f_n
call edi
fild qword [0x60df50]
add esp, 0xc
fstp qword [ebp - 0x46528]
push 0
fld qword [ebp - 0x46528]
mov ecx, dword [ebp - 0x46530]
sub ecx, dword [0x60df58]
fstp qword [ebp - 0x4650c]
mov eax, dword [ebp - 0x4652c]
sbb eax, dword [0x60df5c]
movsd xmm1, qword [ebp - 0x4650c]
mov dword [ebp - 0x46510], eax
mov dword [ebp - 0x46514], ecx
fild qword [ebp - 0x46514]
push 0x3e8
fstp qword [ebp - 0x46528]
fld qword [ebp - 0x46528]
divsd xmm1, qword [0x60df38]
fstp qword [ebp - 0x46528]
mov eax, dword [0x60de90]
movsd xmm2, qword [ebp - 0x46528]
push dword [0x60df54]
movd xmm0, eax
push dword [0x60df50]
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5c6a60]
mulsd xmm1, xmm0
subsd xmm2, xmm1
movsd qword [ebp - 0x46520], xmm2
call fcn.0057d640
movsd xmm0, qword [ebp - 0x46520]
mov dword [ebp - 0x46514], eax
mov dword [ebp - 0x46510], edx
fild qword [ebp - 0x46514]
fstp qword [ebp - 0x46528]
fld qword [ebp - 0x46528]
fstp qword [ebp - 0x46528]
divsd xmm0, qword [ebp - 0x46528]
divsd xmm0, qword [0x58d4e8]
mulsd xmm0, qword [ebp - 0x4650c]
movsd qword [ebp - 0x46520], xmm0
fld qword [ebp - 0x46520]
call fcn.0057d726
add dword [0x60df58], eax
adc dword [0x60df5c], edx
cmp dword [0x60de94], 0
je 0x43d21d
lea eax, [ebp - 0x4653c]
push eax
call ebx
push esi
lea eax, [ebp - 0x4658c]
push eax
push dword [0x60de70]
call sub.avformat_53.dll_Ordinal_60
mov esi, eax
add esp, 8
test esi, esi
js 0x43d41c
lea ecx, [ecx]
mov ecx, dword [ebp - 0x46574]
cmp ecx, dword [0x60dec8]
jne 0x43d2bc
lea eax, [ebp - 0x4658c]
push eax
lea eax, [ebp - 0x46534]
push eax
push dword [0x60de84]
push dword [0x60de74]
call sub.avcodec_53.dll_Ordinal_131
add esp, 0x10
cmp dword [ebp - 0x46534], 0
je 0x43d2b6
cmp byte [0x60dec7], 0
jne 0x43d4de
mov ecx, dword [0x60de84]
lea eax, [ecx + 0x10]
push eax
push ecx
call fcn.0043d5f0
lea eax, [ebp - 0x4658c]
push eax
call sub.avcodec_53.dll_Ordinal_77
mov eax, dword [0x60de88]
add esp, 0xc
cmp dword [0x60de8c], eax
je 0x43d4ac
mov ecx, dword [ebp - 0x46574]
cmp ecx, dword [0x60decc]
jne 0x43d3eb
lea eax, [ebp - 0x4658c]
push eax
lea eax, [ebp - 0x46518]
lea ebx, [ebp - 0x464f5]
push eax
and ebx, 0xfffffff0
push ebx
push dword [0x60de7c]
mov dword [ebp - 0x46510], ebx
mov dword [ebp - 0x46518], 0x2ee00
call sub.avcodec_53.dll_Ordinal_129
mov edx, dword [ebp - 0x46518]
add esp, 0x10
test edx, edx
je 0x43d3eb
mov ecx, dword [0x60de94]
test ecx, ecx
je 0x43d3eb
mov eax, dword [0x60df34]
sub eax, edx
add eax, ecx
cmp dword [0x60de98], eax
jb 0x43d3b4
push str.WRITE_OVERLAP_n
call edi
push dword [0x60dec0]
call sub.SDL2.dll_SDL_LockMutex
mov edi, dword [0x60de98]
mov ebx, dword [0x60df34]
sub ebx, edi
add ebx, dword [0x60de94]
push ebx
push dword [ebp - 0x46510]
push edi
call sub.MSVCR110.dll_memcpy
mov ecx, dword [0x60de94]
sub edi, dword [0x60df34]
mov eax, dword [ebp - 0x46518]
sub edi, ecx
add eax, edi
push eax
mov dword [ebp - 0x46518], eax
mov eax, dword [ebp - 0x46510]
add eax, ebx
push eax
push ecx
call sub.MSVCR110.dll_memcpy
push dword [0x60dec0]
call sub.SDL2.dll_SDL_UnlockMutex
mov eax, dword [0x60de94]
mov edi, dword [sym.imp.MSVCR110.dll_printf]
add esp, 0x24
add eax, dword [ebp - 0x46518]
mov dword [0x60de98], eax
jmp 0x43d3eb
push dword [0x60dec0]
call sub.SDL2.dll_SDL_LockMutex
push dword [ebp - 0x46518]
push ebx
push dword [0x60de98]
call sub.MSVCR110.dll_memcpy
push dword [0x60dec0]
call sub.SDL2.dll_SDL_UnlockMutex
mov eax, dword [ebp - 0x46518]
add esp, 0x14
add dword [0x60de98], eax
lea eax, [ebp - 0x4658c]
push eax
call sub.avcodec_53.dll_Ordinal_77
lea eax, [ebp - 0x4658c]
push eax
push dword [0x60de70]
call sub.avformat_53.dll_Ordinal_60
mov esi, eax
add esp, 0xc
test esi, esi
jns 0x43d240
mov ebx, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov edi, 0xa
cmp dword [0x60de94], 0
je 0x43d454
cmp byte [0x60df48], 0
je 0x43d454
push 0x60df58
call ebx
push dword [0x60de94]
push 0x43d800
call sub.SDL2_mixer.dll_Mix_HookMusic
add esp, 8
mov byte [0x60df48], 0
inc dword [0x60de90]
test esi, esi
pop esi
jns 0x43d4e6
mov eax, dword [0x60de88]
cmp dword [0x60de8c], eax
je 0x43d49a
cmp byte [0x60dec7], 0
jne 0x43d482
push eax
call fcn.0043d6c0
add esp, 4
mov eax, dword [0x60de88]
inc eax
xor edx, edx
div edi
mov dword [0x60de88], edx
cmp dword [0x60de8c], edx
jne 0x43d4e6
pop edi
xor al, al
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0057d22e
mov esp, ebp
pop ebp
ret
cmp byte [0x60dec7], 0
jne 0x43d4c3
push eax
call fcn.0043d6c0
mov eax, dword [0x60de88]
add esp, 4
inc eax
xor edx, edx
mov edi, 0xa
div edi
mov ebx, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov dword [0x60de88], edx
jmp 0x43d421
push 1
call dword [sym.imp.MSVCR110.dll_exit]
lea eax, [ebp - 0x46530]
push eax
call ebx
mov ecx, dword [ebp - 0x46530]
sub ecx, dword [0x60df58]
mov eax, dword [ebp - 0x4652c]
sbb eax, dword [0x60df5c]
mov dword [ebp - 0x4650c], ecx
mov dword [ebp - 0x46508], eax
fild qword [ebp - 0x4650c]
push 0
push 0x3e8
fstp qword [ebp - 0x46520]
fld qword [ebp - 0x46520]
fstp qword [ebp - 0x46520]
movsd xmm2, qword [ebp - 0x46520]
fild qword [0x60df50]
fstp qword [ebp - 0x46520]
fld qword [ebp - 0x46520]
mov eax, dword [0x60de90]
fstp qword [ebp - 0x46520]
push dword [0x60df54]
movsd xmm1, qword [ebp - 0x46520]
divsd xmm1, qword [0x60df38]
push dword [0x60df50]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5c6a60]
mulsd xmm1, xmm0
subsd xmm2, xmm1
movsd qword [ebp - 0x46528], xmm2
call fcn.0057d640
movsd xmm0, qword [ebp - 0x46528]
mov dword [ebp - 0x46514], eax
mov dword [ebp - 0x46510], edx
fild qword [ebp - 0x46514]
xorps xmm1, xmm1
fstp qword [ebp - 0x46520]
fld qword [ebp - 0x46520]
fstp qword [ebp - 0x46520]
divsd xmm0, qword [ebp - 0x46520]
comisd xmm1, xmm0
ja 0x43d4e6
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
mov al, 1
pop ebx
call fcn.0057d22e
mov esp, ebp
pop ebp
ret