Function at 0x44aa70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
mov ebx, eax
sub esp, 0x7c
mov eax, dword [eax + 0xbc]
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x38], 0
test eax, eax
je 0x44aa9a
movzx edx, word [eax]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x3c], 0
test edx, edx
je 0x44aab7
mov edx, dword [esp + 0x44]
cmp byte [edx], 0x2b
je 0x44afe0
lea edx, [ebx + 0x64]
xor esi, esi
mov dword [esp + 0x54], edx
lea edx, [ebx + 0x54]
mov dword [ebx + 4], 0
mov dword [esp + 0x58], edx
nop
xor edx, edx
test eax, eax
mov dword [ebx + 0x80], 0
je 0x44aaef
mov edx, dword [esp + 0x38]
mov dword [esp + 0x6c], edx
mov word [eax], dx
lea edx, [esp + 0x6c]
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], esi
mov dword [esp + 4], edx
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call fcn.00424390
test eax, eax
mov dword [ebx + 4], eax
je 0x44afd0
mov edx, dword [ebx + 0xbc]
test edx, edx
je 0x44ab26
mov ecx, dword [esp + 0x6c]
mov word [edx], cx
mov eax, dword [eax + 0x380]
mov edx, dword [esp + 0x94]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00424740
test eax, eax
jne 0x44af60
mov ebp, dword [esp + 0x44]
test ebp, ebp
je 0x44af70
mov esi, dword [ebx + 4]
mov edx, dword [esp + 0x44]
mov eax, dword [esi + 0x380]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x44ae60
mov edi, dword [esp + 0x48]
test edi, edi
je 0x44ab9a
mov eax, dword [esi + 0x390]
mov edx, dword [esp + 0x48]
mov dword [esp], eax
mov dword [esp + 4], edx
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x44ae60
mov ecx, dword [esp + 0x3c]
test ecx, ecx
jne 0x44abb6
movsx eax, word [esi + 0x3a6]
cmp eax, dword [esp + 0x90]
jl 0x44ae60
mov eax, dword [esi + 0x380]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.004246b0
mov edi, dword [0x9d3e80]
mov dword [esp + 0x6c], 0
test edi, edi
je 0x44b043
mov edx, dword [ebx + 4]
mov esi, 1
mov dword [esp + 0x50], ebx
mov eax, dword [edx + 0x390]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x40], eax
jmp 0x44ac17
mov edi, dword [esi*4 + 0x9d3e80]
mov dword [esp + 0x6c], esi
add esi, 1
test edi, edi
je 0x44ae20
mov ebx, dword [edi]
mov edx, dword [esp + 0x40]
mov ebp, dword [ebx + 4]
mov dword [esp + 4], edx
mov dword [esp], ebp
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x44ac01
mov edx, ebx
mov ebx, dword [esp + 0x50]
mov eax, dword [edx]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], str.Opening_audio_decoder:___s___s_n
mov dword [esp + 4], 4
mov dword [esp + 0x10], eax
mov dword [esp], 0xc
call fcn.0042b9b0
mov eax, edi
test byte [0x9135d0], 4
mov dword [ebx + 0x80], edi
jne 0x44af78
mov dword [esp], ebx
call dword [eax + 4]
test eax, eax
je 0x44afaf
mov eax, dword [ebx + 0x50]
test eax, eax
jle 0x44acbe
mov dword [ebx + 0x5c], eax
mov dword [esp + 0xc], eax
mov dword [esp + 8], str.dec_audio:_Allocating__d_bytes_for_input_buffer._n
mov dword [esp + 4], 6
mov dword [esp], 0xc
call fcn.0042b9b0
mov eax, dword [ebx + 0x5c]
mov dword [esp], eax
call sub.avutil_51.dll_av_mallocz
mov dword [ebx + 0x58], 0
mov dword [ebx + 0x54], eax
mov eax, dword [ebx + 0x60]
lea edx, [eax + 0x10000]
mov dword [ebx + 0x6c], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0x10000
mov dword [esp + 8], str.dec_audio:_Allocating__d___d___d_bytes_for_output_buffer._n
mov dword [esp + 4], 6
mov dword [esp], 0xc
call fcn.0042b9b0
mov eax, dword [ebx + 0x6c]
mov dword [esp], eax
call sub.avutil_51.dll_av_mallocz
test eax, eax
mov dword [ebx + 0x64], eax
je 0x44b022
mov eax, dword [ebx + 0x80]
mov dword [ebx + 0x68], 0
mov dword [esp], ebx
call dword [eax + 8]
test eax, eax
je 0x44b015
mov eax, dword [ebx + 0x44]
mov dword [ebx + 0xc], 1
test eax, eax
je 0x44ae70
mov edx, dword [ebx + 0x3c]
test edx, edx
je 0x44ae70
mov esi, dword [ebx + 0x48]
test esi, esi
je 0x44aff4
mov eax, dword [ebx + 0x38]
mov edi, dword [ebx + 0x4c]
mov dword [esp], eax
call fcn.00443df0
mov dword [esp + 0x5c], edi
mov dword [esp + 0x28], edi
shl edi, 3
mov dword [esp + 0x2c], esi
fild dword [esp + 0x5c]
mov dword [esp + 0x5c], esi
fild dword [esp + 0x5c]
fdivp st(1)
mov dword [esp + 0x5c], edi
mov dword [esp + 0x14], eax
fmul dword [0x9d5168]
fstp qword [esp + 0x20]
fild dword [esp + 0x5c]
fmul qword [0x9d5170]
fstp qword [esp + 0x18]
mov eax, dword [ebx + 0x44]
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x3c]
mov dword [esp + 8], str.AUDIO:__d_Hz___d_ch___s___3.1f_kbit__3.2f____ratio:__d___d__n
mov dword [esp + 4], 4
mov dword [esp], 0xc
mov dword [esp + 0xc], eax
call fcn.0042b9b0
mov eax, dword [ebx + 0x44]
mov dword [esp + 0x14], eax
mov eax, dword [ebx + 0x3c]
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x4c]
mov dword [esp + 8], str.ID_AUDIO_BITRATE_d_nID_AUDIO_RATE_d_nID_AUDIO_NCH_d_n
mov dword [esp + 4], 4
mov dword [esp], 0x29
shl eax, 3
mov dword [esp + 0xc], eax
call fcn.0042b9b0
mov eax, 1
mov dword [ebx + 0x78], 0
mov dword [ebx + 0x70], 0
mov dword [ebx + 0x74], 0
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, dword [esp + 0x50]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + 0x380]
mov dword [esp + 8], str.Requested_audio_codec_family___s___afm_s__not_available._nEnable_it_at_compilation._n
mov dword [esp + 4], 1
mov dword [esp], 0xc
mov dword [esp + 0xc], eax
call fcn.0042b9b0
mov esi, dword [ebx + 4]
lea esi, [esi]
mov eax, dword [ebx + 0xbc]
jmp 0x44aad0
mov dword [esp + 8], str.Unknown_missing_audio_format____no_sound_n
mov dword [esp + 4], 2
mov dword [esp], 0xc
call fcn.0042b9b0
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x44aecc
mov dword [esp + 8], str.Uninit_audio_filters..._n
mov dword [esp + 4], 6
mov dword [esp], 0xc
call fcn.0042b9b0
mov eax, dword [ebx + 0x7c]
mov dword [esp], eax
call fcn.00433ca0
mov eax, dword [ebx + 0x7c]
mov dword [esp], eax
call fcn.008f2ba8
mov dword [ebx + 0x7c], 0
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x44af0f
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x390]
mov dword [esp + 8], str.Uninit_audio:__s_n
mov dword [esp + 4], 6
mov dword [esp], 0xc
mov dword [esp + 0xc], eax
call fcn.0042b9b0
mov eax, dword [ebx + 0x80]
mov dword [esp], ebx
call dword [eax + 0xc]
mov dword [ebx + 0xc], 0
mov eax, dword [ebx + 0x70]
mov dword [esp], eax
call fcn.008f2ba8
mov edx, dword [esp + 0x54]
mov dword [ebx + 0x70], 0
mov dword [ebx + 0x78], 0
mov dword [esp], edx
call fcn.0078d3e8
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.0078d3e8
mov dword [esp + 8], str.ADecoder_init_failed_:__n
mov dword [esp + 4], 4
mov dword [esp], 0xc
call fcn.0042b9b0
lea esi, [esi]
mov esi, dword [ebx + 4]
mov eax, dword [ebx + 0xbc]
jmp 0x44aad0
mov esi, dword [ebx + 4]
jmp 0x44ab74
lea eax, [esp + 0x68]
mov dword [esp + 0x68], 0x1d
mov dword [esp + 8], eax
mov dword [esp + 4], 3
mov dword [esp], ebx
call dword [edi + 0x10]
cmp eax, 1
je 0x44b005
mov eax, dword [ebx + 0x80]
mov dword [esp], ebx
call dword [eax + 4]
test eax, eax
jne 0x44ac7f
mov dword [esp + 8], str.ADecoder_preinit_failed_:__n
mov dword [esp + 4], 1
mov dword [esp], 0xc
call fcn.0042b9b0
jmp 0x44af40
add esp, 0x7c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
add edx, 1
mov dword [esp + 0x44], edx
mov dword [esp + 0x3c], 1
jmp 0x44aab7
mov esi, eax
imul esi, edx
imul esi, dword [ebx + 0x40]
mov dword [ebx + 0x48], esi
jmp 0x44ad4f
mov eax, dword [esp + 0x68]
mov dword [ebx + 0x40], 4
mov dword [ebx + 0x38], eax
jmp 0x44af9b
mov dword [esp + 8], str.ADecoder_init_failed_:__n
jmp 0x44ae78
mov dword [esp + 8], str.Cannot_allocate_audio_out_buffer._n
mov dword [esp + 4], 1
mov dword [esp], 0xc
call fcn.0042b9b0
jmp 0x44af40
mov edx, dword [ebx + 4]
mov eax, dword [edx + 0x390]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x40], eax
mov edx, eax
jmp 0x44ae28