Function at 0x402c60
Capabilities:
Terminate process

Disassembly:
sub esp, 0x10
push ebx
mov ebx, dword [esp + 0x18]
push ebp
push esi
push edi
push 0xffffffffffffffff
push ebx
call fcn.0040b940
mov ebp, dword [esp + 0x30]
add esp, 8
mov edi, 0x4453bc
mov esi, ebp
mov ecx, 2
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x402ce7
call fcn.00425de9
mov edi, eax
push edi
call fcn.00403250
add esp, 4
mov eax, dword [0x47be38]
cmp eax, 4
je 0x402d91
cmp eax, 5
je 0x402d91
cmp eax, 6
je 0x402d91
cmp eax, 7
jne 0x402d22
cmp dword [0x47be78], 0xa
jge 0x402ce0
push str.sorry__vorbis_support_in_LAME_is_deprecated._n
call fcn.00425de9
add eax, 0x40
push eax
call fcn.00425b9c
add esp, 8
push 1
call fcn.00426d23
push 0x4456fc
push ebp
call fcn.0042688f
mov edi, eax
add esp, 8
test edi, edi
jne 0x402c9c
cmp dword [0x47be78], 0xa
jge 0x402d1b
push ebp
push str.Could_not_find___s_._n
call fcn.00425de9
add eax, 0x40
push eax
call fcn.00425b9c
add esp, 0xc
push 1
call fcn.00426d23
cmp eax, 1
je 0x402d3e
push edi
push ebx
call fcn.004025a0
add esp, 8
cmp dword [0x47be38], 1
jne 0x402e0b
cmp dword [0x47be78], 0xa
jge 0x402d83
push str.Assuming_raw_pcm_input_file
call fcn.00425de9
add eax, 0x40
push eax
call fcn.00425b9c
add esp, 8
cmp dword [0x47be6c], 0
je 0x402d6d
push str._:_Forcing_byte_swapping_n
jmp 0x402d72
push 0x4456a8
call fcn.00425de9
add eax, 0x40
push eax
call fcn.00425b9c
add esp, 8
mov ecx, dword [0x47be6c]
mov dword [0x462508], ecx
jmp 0x402e0b
push 0x47be40
push edi
call fcn.00402700
add esp, 8
cmp eax, 0xffffffff
jne 0x402dbc
cmp dword [0x47be78], 0xa
jge 0x402d1b
push ebp
push 0x445678
jmp 0x402d0a
mov edx, dword [0x47be44]
push edx
push ebx
call fcn.0040b980
add esp, 8
cmp eax, 0xffffffff
jne 0x402dee
cmp dword [0x47be78], 0xa
jge 0x402d1b
mov eax, dword [0x47be44]
push eax
push str.Unsupported_number_of_channels:__ud_n
jmp 0x402d0a
mov ecx, dword [0x47be48]
push ecx
push ebx
call fcn.0040b960
mov edx, dword [0x47be5c]
push edx
push ebx
call fcn.0040b940
add esp, 0x10
push ebx
call fcn.0040b950
add esp, 4
cmp eax, 0xffffffff
jne 0x402f1f
call fcn.00425de9
cmp edi, eax
je 0x402f1f
push ebp
call fcn.00403270
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
add esp, 4
fst qword [esp + 0x18]
fldz
fcomp st(1)
fnstsw ax
test ah, 0x41
jp 0x402f1d
mov eax, dword [0x47be38]
cmp eax, 4
je 0x402eae
cmp eax, 5
je 0x402eae
cmp eax, 6
je 0x402eae
push ebx
fstp st(0)
call fcn.0040b9a0
add eax, eax
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fnstcw word [esp + 0x14]
fdivr qword [esp + 0x1c]
movzx eax, word [esp + 0x14]
or eax, 0xc00
mov dword [esp + 0x1c], eax
fldcw word [esp + 0x1c]
fistp qword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
push eax
push ebx
fldcw word [esp + 0x1c]
call fcn.0040b940
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret
cmp dword [0x47be4c], 0
jle 0x402f1d
fmul qword [0x445670]
push ebx
fild dword [0x47be4c]
fmul qword [0x445668]
fdivp st(1)
fstp qword [esp + 0x14]
call fcn.0040b970
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fmul qword [esp + 0x14]
fnstcw word [esp + 0x14]
movzx eax, word [esp + 0x14]
or eax, 0xc00
mov dword [esp + 0x1c], eax
fldcw word [esp + 0x1c]
fistp qword [esp + 0x1c]
mov esi, dword [esp + 0x1c]
push esi
push ebx
fldcw word [esp + 0x1c]
call fcn.0040b940
add esp, 0xc
mov eax, edi
pop edi
mov dword [0x47be5c], esi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret
fstp st(0)
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret