Function at 0x4012d0
Capabilities:
Encode data using xor
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x2b4
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x2b0], eax
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
xor ecx, ecx
mov dword [esp + 0xb8], ecx
xorps xmm0, xmm0
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x108], ecx
mov dword [esp + 0x100], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x90], ecx
mov ecx, 0x801
mov dword [esp + 0x88], ecx
xor ecx, ecx
mov dword [esp + 0xac], eax
mov dword [esp + 0x64], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xf0], 0
movsd qword [esp + 0x128], xmm0
movsd qword [esp + 0x158], xmm0
movsd qword [esp + 0x150], xmm0
movsd qword [esp + 0x110], xmm0
movsd qword [esp + 0xc0], xmm0
mov dword [esp + 0x5c], 0xfffffc18
mov dword [esp + 0xd0], 0
mov dword [esp + 0x17c], 1
mov dword [esp + 0xa4], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x164], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x168], ecx
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], ecx
mov dword [esp + 0x16c], 0xbb80
mov dword [esp + 0x170], ecx
mov dword [esp + 0x11c], ecx
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xd4], 1
mov dword [esp + 0x74], ecx
mov dword [esp + 0x174], ecx
mov dword [esp + 0x6c], ecx
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x48], edi
cmp eax, 5
jge 0x401466
mov ecx, edi
call fcn.004010e0
push 0
call fcn.004622dc
add esp, 4
jmp 0x403e46
push str.libopus_1.5.2
push 0x47c200
push 2
movlpd qword [esp + 0xe4], xmm0
movlpd qword [esp + 0x18c], xmm0
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
mov edx, dword [edi + 4]
add esp, 0xc
mov ecx, 0x47c204
mov eax, edx
nop
mov bl, byte [eax]
cmp bl, byte [ecx]
jne 0x4014c0
test bl, bl
je 0x4014bc
mov bl, byte [eax + 1]
cmp bl, byte [ecx + 1]
jne 0x4014c0
add eax, 2
add ecx, 2
test bl, bl
jne 0x4014a0
xor eax, eax
jmp 0x4014c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40150a
lea esi, [eax + 2]
mov dword [esp + 0xb4], 1
mov dword [esp + 0xfc], 1
xor ebx, ebx
mov dword [esp + 0xe4], 1
mov dword [esp + 0x84], 1
mov dword [esp + 0xa8], 1
jmp 0x4015c0
mov eax, 0x47c208
nop
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x401530
test cl, cl
je 0x40152c
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x401530
add edx, 2
add eax, 2
test cl, cl
jne 0x401510
xor eax, eax
jmp 0x401535
sbb eax, eax
or eax, 1
mov dword [esp + 0xb4], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0x84], 0
test eax, eax
jne 0x4015ad
mov ebx, 1
mov dword [esp + 0xa4], 1
lea esi, [eax + 2]
mov dword [esp + 0x78], 1
mov dword [esp + 0xe0], 1
mov dword [esp + 0xcc], 1
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xa8], eax
mov dword [esp + 0x58], ebx
jmp 0x40163b
xor ebx, ebx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xa4], ebx
lea esi, [ebx + 1]
cmp dword [esp + 0xac], 7
mov dword [esp + 0x58], ebx
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xcc], 0
mov dword [esp + 0xe0], 0
mov dword [esp + 0x78], 0
jl 0x401450
mov edi, dword [edi + esi*4]
mov ecx, str.voip
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401621
test dl, dl
je 0x40161d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401621
add eax, 2
add ecx, 2
test dl, dl
jne 0x401601
xor eax, eax
jmp 0x401626
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401692
mov ecx, 0x800
mov dword [esp + 0x88], ecx
mov edi, dword [esp + 0x48]
inc esi
push dword [edi + esi*4]
call fcn.00462806
mov ecx, eax
add esp, 4
mov dword [esp + 0x54], ecx
cmp ecx, 0x1f40
je 0x40173e
cmp ecx, 0x2ee0
je 0x40173e
cmp ecx, 0x3e80
je 0x40173e
cmp ecx, 0x5dc0
je 0x40173e
cmp ecx, 0xbb80
je 0x40173e
push str.Supported_sampling_rates_are_8000__12000__16000__24000_and_48000._n
jmp 0x403e2c
mov ecx, str.restricted_lowdelay
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4016c0
test dl, dl
je 0x4016bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4016c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4016a0
xor eax, eax
jmp 0x4016c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4016d3
mov ecx, 0x803
jmp 0x40162f
mov ecx, str.audio
mov eax, edi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401700
test dl, dl
je 0x4016fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401700
add eax, 2
add ecx, 2
test dl, dl
jne 0x4016e0
xor eax, eax
jmp 0x401705
sbb eax, eax
or eax, 1
test eax, eax
je 0x401636
push edi
push str.unknown_application:__s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
mov ecx, dword [esp + 0x54]
add esp, 0xc
call fcn.004010e0
push 0
call fcn.004622dc
add esp, 4
jmp 0x403e46
push dword [edi + esi*4 + 4]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x148], eax
mov dword [esp + 0x50], eax
call fcn.00462806
mov dword [esp + 0x6c], eax
lea edi, [esi + 2]
dec eax
add esp, 4
cmp eax, 1
ja 0x403e27
cmp dword [esp + 0xa4], 0
jne 0x40179b
mov ecx, dword [esp + 0x48]
push dword [ecx + esi*4 + 8]
call fcn.00462806
add esp, 4
mov dword [esp + 0xc8], eax
lea edi, [esi + 3]
mov esi, dword [esp + 0xac]
mov edx, 0x5dc
add esi, 0xfffffffe
mov dword [esp + 0xf4], 1
mov dword [esp + 0x50], edx
mov dword [esp + 0xec], 0xa
mov dword [esp + 0x104], 0
mov dword [esp + 0x118], 0
mov dword [esp + 0xe8], 0xfffffc18
mov dword [esp + 0x80], 0
mov dword [esp + 0x13c], 0
mov dword [esp + 0xf8], esi
cmp edi, esi
jge 0x4023d8
mov esi, dword [esp + 0x48]
nop
mov esi, dword [esi + edi*4]
mov ecx, str._cbr
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401840
test dl, dl
je 0x40183c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401840
add eax, 2
add ecx, 2
test dl, dl
jne 0x401820
xor eax, eax
jmp 0x401845
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40185f
cmp dword [esp + 0x58], eax
jne 0x40242d
mov dword [esp + 0xf4], eax
jmp 0x4023bb
mov ecx, str._bandwidth
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401886
test dl, dl
je 0x401882
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401886
add eax, 2
add ecx, 2
test dl, dl
jne 0x401866
xor eax, eax
jmp 0x40188b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4019ed
cmp dword [esp + 0x58], eax
jne 0x402461
mov ecx, dword [esp + 0x48]
mov esi, dword [ecx + edi*4 + 4]
mov ecx, 0x47c2f4
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4018d0
test dl, dl
je 0x4018cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4018d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4018b0
xor eax, eax
jmp 0x4018d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4018e9
mov dword [esp + 0x5c], 0x44d
add edi, 2
jmp 0x4023bc
mov ecx, 0x47c2f8
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401910
test dl, dl
je 0x40190c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401910
add eax, 2
add ecx, 2
test dl, dl
jne 0x4018f0
xor eax, eax
jmp 0x401915
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401929
mov dword [esp + 0x5c], 0x44e
add edi, 2
jmp 0x4023bc
mov ecx, 0x47c2fc
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401950
test dl, dl
je 0x40194c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401950
add eax, 2
add ecx, 2
test dl, dl
jne 0x401930
xor eax, eax
jmp 0x401955
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401969
mov dword [esp + 0x5c], 0x44f
add edi, 2
jmp 0x4023bc
mov ecx, 0x47c300
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401990
test dl, dl
je 0x40198c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401990
add eax, 2
add ecx, 2
test dl, dl
jne 0x401970
xor eax, eax
jmp 0x401995
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4019a9
mov dword [esp + 0x5c], 0x450
add edi, 2
jmp 0x4023bc
mov ecx, 0x47c304
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4019d0
test dl, dl
je 0x4019cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4019d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4019b0
xor eax, eax
jmp 0x4019d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402459
mov dword [esp + 0x5c], 0x451
add edi, 2
jmp 0x4023bc
mov ecx, str._framesize
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401a14
test dl, dl
je 0x401a10
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401a14
add eax, 2
add ecx, 2
test dl, dl
jne 0x4019f4
xor eax, eax
jmp 0x401a19
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401cd3
cmp dword [esp + 0x58], eax
jne 0x402470
mov ecx, dword [esp + 0x48]
mov esi, dword [ecx + edi*4 + 4]
mov ecx, 0x47c350
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401a60
test dl, dl
je 0x401a5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401a60
add eax, 2
add ecx, 2
test dl, dl
jne 0x401a40
xor eax, eax
jmp 0x401a65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401a88
mov eax, 0x51eb851f
imul dword [esp + 0x54]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, 2
mov dword [esp + 0x4c], eax
jmp 0x4023bc
mov ecx, 0x47c354
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401ab0
test dl, dl
je 0x401aac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401ab0
add eax, 2
add ecx, 2
test dl, dl
jne 0x401a90
xor eax, eax
jmp 0x401ab5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401ad8
mov eax, 0x51eb851f
imul dword [esp + 0x54]
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, 2
mov dword [esp + 0x4c], eax
jmp 0x4023bc
mov ecx, 0x47c358
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401b00
test dl, dl
je 0x401afc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401b00
add eax, 2
add ecx, 2
test dl, dl
jne 0x401ae0
xor eax, eax
jmp 0x401b05
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401b28
mov eax, 0x51eb851f
imul dword [esp + 0x54]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, 2
mov dword [esp + 0x4c], eax
jmp 0x4023bc
mov ecx, 0x47c35c
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401b50
test dl, dl
je 0x401b4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401b50
add eax, 2
add ecx, 2
test dl, dl
jne 0x401b30
xor eax, eax
jmp 0x401b55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401b6c
mov eax, dword [esp + 0x144]
add edi, 2
mov dword [esp + 0x4c], eax
jmp 0x4023bc
mov ecx, 0x47c360
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401b93
test dl, dl
je 0x401b8f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401b93
add eax, 2
add ecx, 2
test dl, dl
jne 0x401b73
xor eax, eax
jmp 0x401b98
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401bbb
mov eax, 0x51eb851f
imul dword [esp + 0x54]
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, 2
mov dword [esp + 0x4c], eax
jmp 0x4023bc
mov ecx, 0x47c364
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401be2
test dl, dl
je 0x401bde
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401be2
add eax, 2
add ecx, 2
test dl, dl
jne 0x401bc2
xor eax, eax
jmp 0x401be7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401bf7
mov esi, dword [esp + 0x54]
lea ecx, [esi + esi*2]
jmp 0x401cb6
mov ecx, 0x47c368
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401c20
test dl, dl
je 0x401c1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401c20
add eax, 2
add ecx, 2
test dl, dl
jne 0x401c00
xor eax, eax
jmp 0x401c25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401c39
mov eax, dword [esp + 0x54]
lea ecx, [eax*4]
jmp 0x401cb6
mov ecx, 0x47c36c
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401c60
test dl, dl
je 0x401c5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401c60
add eax, 2
add ecx, 2
test dl, dl
jne 0x401c40
xor eax, eax
jmp 0x401c65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401c72
mov esi, dword [esp + 0x54]
lea ecx, [esi + esi*4]
jmp 0x401cb6
mov ecx, 0x47c370
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401ca0
test dl, dl
je 0x401c9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401ca0
add eax, 2
add ecx, 2
test dl, dl
jne 0x401c80
xor eax, eax
jmp 0x401ca5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402468
mov eax, dword [esp + 0x54]
lea ecx, [eax + eax*2]
add ecx, ecx
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, 2
mov dword [esp + 0x4c], eax
jmp 0x4023bc
mov ecx, str._max_payload
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401d00
test dl, dl
je 0x401cfc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401d00
add eax, 2
add ecx, 2
test dl, dl
jne 0x401ce0
xor eax, eax
jmp 0x401d05
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401d31
cmp dword [esp + 0x58], eax
jne 0x402477
mov esi, dword [esp + 0x48]
push dword [esi + edi*4 + 4]
call fcn.00462806
mov edx, eax
add esp, 4
mov dword [esp + 0x50], edx
add edi, 2
jmp 0x4023c4
mov ecx, str._complexity
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401d58
test dl, dl
je 0x401d54
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401d58
add eax, 2
add ecx, 2
test dl, dl
jne 0x401d38
xor eax, eax
jmp 0x401d5d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401d8a
cmp dword [esp + 0x58], eax
jne 0x40247e
mov esi, dword [esp + 0x48]
push dword [esi + edi*4 + 4]
call fcn.00462806
add esp, 4
mov dword [esp + 0xec], eax
add edi, 2
jmp 0x4023c0
mov ecx, str._dec_complexity
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401db1
test dl, dl
je 0x401dad
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401db1
add eax, 2
add ecx, 2
test dl, dl
jne 0x401d91
xor eax, eax
jmp 0x401db6
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401de6
cmp dword [esp + 0xa8], eax
jne 0x402485
mov esi, dword [esp + 0x48]
push dword [esi + edi*4 + 4]
call fcn.00462806
add esp, 4
mov dword [esp + 0x104], eax
add edi, 2
jmp 0x4023c0
mov ecx, str._inbandfec
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401e10
test dl, dl
je 0x401e0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401e10
add eax, 2
add ecx, 2
test dl, dl
jne 0x401df0
xor eax, eax
jmp 0x401e15
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401e29
mov dword [esp + 0x118], 1
jmp 0x4023bb
mov ecx, str._forcemono
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401e50
test dl, dl
je 0x401e4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401e50
add eax, 2
add ecx, 2
test dl, dl
jne 0x401e30
xor eax, eax
jmp 0x401e55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401e71
test ebx, ebx
jne 0x402491
mov dword [esp + 0xe8], 1
jmp 0x4023bb
mov ecx, str._cvbr
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401e98
test dl, dl
je 0x401e94
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401e98
add eax, 2
add ecx, 2
test dl, dl
jne 0x401e78
xor eax, eax
jmp 0x401e9d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401eb9
test ebx, ebx
jne 0x402498
mov dword [esp + 0xf0], 1
jmp 0x4023bb
mov ecx, str._delayed_decision
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401ee0
test dl, dl
je 0x401edc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401ee0
add eax, 2
add ecx, 2
test dl, dl
jne 0x401ec0
xor eax, eax
jmp 0x401ee5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401f01
test ebx, ebx
jne 0x40249f
mov dword [esp + 0xbc], 1
jmp 0x4023bb
mov ecx, str._dtx
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401f28
test dl, dl
je 0x401f24
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401f28
add eax, 2
add ecx, 2
test dl, dl
jne 0x401f08
xor eax, eax
jmp 0x401f2d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401f49
test ebx, ebx
jne 0x4024a6
mov dword [esp + 0x80], 1
jmp 0x4023bb
mov ecx, str._loss
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401f70
test dl, dl
je 0x401f6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401f70
add eax, 2
add ecx, 2
test dl, dl
jne 0x401f50
xor eax, eax
jmp 0x401f75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401f98
mov esi, dword [esp + 0x48]
push dword [esi + edi*4 + 4]
call fcn.00462806
add esp, 4
mov dword [esp + 0x13c], eax
add edi, 2
jmp 0x4023c0
mov ecx, str._lossfile
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401fc0
test dl, dl
je 0x401fbc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401fc0
add eax, 2
add ecx, 2
test dl, dl
jne 0x401fa0
xor eax, eax
jmp 0x401fc5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x401ff5
mov esi, dword [esp + 0x48]
push 0x47c468
push dword [esi + edi*4 + 4]
call fcn.0045b237
add esp, 8
mov dword [esp + 0x174], eax
test eax, eax
je 0x403eb4
add edi, 2
jmp 0x4023c0
mov ecx, str._dred
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402020
test dl, dl
je 0x40201c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402020
add eax, 2
add ecx, 2
test dl, dl
jne 0x402000
xor eax, eax
jmp 0x402025
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402045
mov esi, dword [esp + 0x48]
push dword [esi + edi*4 + 4]
call fcn.00462806
add esp, 4
mov dword [esp + 0x6c], eax
add edi, 2
jmp 0x4023c0
mov ecx, str._sweep
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402070
test dl, dl
je 0x40206c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402070
add eax, 2
add ecx, 2
test dl, dl
jne 0x402050
xor eax, eax
jmp 0x402075
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4020a0
test ebx, ebx
jne 0x4024ad
mov esi, dword [esp + 0x48]
push dword [esi + edi*4 + 4]
call fcn.00462806
add esp, 4
mov dword [esp + 0x10c], eax
add edi, 2
jmp 0x4023c0
mov ecx, str._random_framesize
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4020c7
test dl, dl
je 0x4020c3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4020c7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4020a7
xor eax, eax
jmp 0x4020cc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4020e8
test ebx, ebx
jne 0x4024b7
mov dword [esp + 0x164], 1
jmp 0x4023bb
mov ecx, str._sweep_max
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402110
test dl, dl
je 0x40210c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402110
add eax, 2
add ecx, 2
test dl, dl
jne 0x4020f0
xor eax, eax
jmp 0x402115
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402140
test ebx, ebx
jne 0x4024c1
mov esi, dword [esp + 0x48]
push dword [esi + edi*4 + 4]
call fcn.00462806
add esp, 4
mov dword [esp + 0x14c], eax
add edi, 2
jmp 0x4023c0
mov ecx, str._random_fec
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402167
test dl, dl
je 0x402163
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402167
add eax, 2
add ecx, 2
test dl, dl
jne 0x402147
xor eax, eax
jmp 0x40216c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402188
test ebx, ebx
jne 0x4024cb
mov dword [esp + 0x168], 1
jmp 0x4023bb
mov ecx, str._silk8k_test
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4021b0
test dl, dl
je 0x4021ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4021b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x402190
xor eax, eax
jmp 0x4021b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4021dc
test ebx, ebx
jne 0x4024d5
mov dword [esp + 0x98], 0x47cca0
mov dword [esp + 0x9c], 8
jmp 0x4023bb
mov ecx, str._silk12k_test
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402203
test dl, dl
je 0x4021ff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402203
add eax, 2
add ecx, 2
test dl, dl
jne 0x4021e3
xor eax, eax
jmp 0x402208
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40222f
test ebx, ebx
jne 0x4024df
mov dword [esp + 0x98], 0x47c9a0
mov dword [esp + 0x9c], 8
jmp 0x4023bb
mov ecx, str._silk16k_test
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402256
test dl, dl
je 0x402252
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402256
add eax, 2
add ecx, 2
test dl, dl
jne 0x402236
xor eax, eax
jmp 0x40225b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402282
test ebx, ebx
jne 0x4024e9
mov dword [esp + 0x98], 0x47c920
mov dword [esp + 0x9c], 8
jmp 0x4023bb
mov ecx, str._hybrid24k_test
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4022b0
test dl, dl
je 0x4022ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4022b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x402290
xor eax, eax
jmp 0x4022b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4022d1
test ebx, ebx
jne 0x4024f3
mov dword [esp + 0x98], 0x47c8e0
jmp 0x4023b0
mov ecx, str._hybrid48k_test
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4022f8
test dl, dl
je 0x4022f4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4022f8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4022d8
xor eax, eax
jmp 0x4022fd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402319
test ebx, ebx
jne 0x4024fd
mov dword [esp + 0x98], 0x47ca20
jmp 0x4023b0
mov ecx, str._celt_test
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402340
test dl, dl
je 0x40233c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402340
add eax, 2
add ecx, 2
test dl, dl
jne 0x402320
xor eax, eax
jmp 0x402345
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402369
test ebx, ebx
jne 0x402507
mov dword [esp + 0x98], 0x47caa0
mov dword [esp + 0x9c], 0x20
jmp 0x4023bb
mov ecx, str._celt_hq_test
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402390
test dl, dl
je 0x40238c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402390
add eax, 2
add ecx, 2
test dl, dl
jne 0x402370
xor eax, eax
jmp 0x402395
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40251b
test ebx, ebx
jne 0x402511
mov dword [esp + 0x98], 0x47ca60
mov dword [esp + 0x9c], 4
inc edi
mov esi, dword [esp + 0x48]
mov edx, dword [esp + 0x50]
cmp edi, dword [esp + 0xf8]
jl 0x401810
mov esi, dword [esp + 0xf8]
mov eax, dword [esp + 0xc8]
xor ecx, ecx
cmp dword [esp + 0x14c], ecx
cmove eax, ecx
mov dword [esp + 0x18c], eax
cmp edx, 0x5dc
ja 0x403e18
mov edi, dword [esp + 0x48]
push 0x47c584
push dword [edi + esi*4]
call fcn.0045b237
mov ebx, eax
add esp, 8
mov dword [esp + 0xa8], ebx
test ebx, ebx
jne 0x402534
push dword [edi + esi*4]
push str.Could_not_open_input_file__s_n
jmp 0x402437
push str._cbr
push str.option__s_is_only_for_encoding_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
push 0
call fcn.004622dc
add esp, 4
jmp 0x403e46
push esi
push str.Unknown_bandwidth__s._Supported_are_NB__MB__WB__SWB__FB._n
jmp 0x402437
push str._bandwidth
jmp 0x402432
push esi
push str.Unsupported_frame_size:__s_ms._Supported_are_2.5__5__10__20__40__60__80__100__120._n
jmp 0x402437
push str._framesize
jmp 0x402432
push str._max_payload
jmp 0x402432
push str._complexity
jmp 0x402432
push str._dec_complexity
push str.option__s_is_only_for_decoding_n
jmp 0x402437
push str._forcemono
jmp 0x402432
push str._cvbr
jmp 0x402432
push str._delayed_decision
jmp 0x402432
push str._dtx
jmp 0x402432
push str._sweep
jmp 0x402432
push str._random_framesize
jmp 0x402432
push str._sweep_max
jmp 0x402432
push str._random_fec
jmp 0x402432
push str._silk8k_test
jmp 0x402432
push str._silk12k_test
jmp 0x402432
push str._silk16k_test
jmp 0x402432
push str._hybrid24k_test
jmp 0x402432
push str._hybrid48k_test
jmp 0x402432
push str._celt_test
jmp 0x402432
push str._celt_hq_test
jmp 0x402432
push esi
push str.Error:_unrecognized_setting:__s_n_n
call fcn.00401070
mov ecx, dword [esp + 0x50]
call fcn.004010e0
jmp 0x403e3c
cmp dword [esp + 0x98], 0
je 0x4025b3
push 2
push 0
push ebx
call fcn.0045b7d4
add esp, 0xc
push ebx
call fcn.0045adc0
add esp, 4
mov esi, eax
push esi
push str.File_size_is__d_bytes_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
push 0
push 0
push ebx
call fcn.0045b7d4
xor edx, edx
shr esi, 1
mov eax, esi
add esp, 0xc
div dword [esp + 0x68]
xor edx, edx
div dword [esp + 0x9c]
push eax
push str.Switching_mode_every__d_samples_n
push 2
mov dword [esp + 0x178], eax
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
mov esi, dword [esp + 0xac]
push 0x47c5e4
push dword [edi + esi*4 - 4]
call fcn.0045b237
add esp, 8
mov dword [esp + 0xf8], eax
test eax, eax
jne 0x4025e4
push dword [edi + esi*4 - 4]
push str.Could_not_open_output_file__s_n
jmp 0x4026b1
cmp dword [esp + 0xb0], 0
jne 0x402802
mov eax, dword [esp + 0x54]
cmp eax, 0xbb80
je 0x402619
cmp eax, 0x5dc0
je 0x402619
cmp eax, 0x3e80
je 0x402619
cmp eax, 0x2ee0
je 0x402619
cmp eax, 0x1f40
jne 0x402646
mov edi, dword [esp + 0x68]
cmp edi, 1
je 0x402627
cmp edi, 2
jne 0x402646
mov esi, dword [esp + 0x88]
cmp esi, 0x800
je 0x40264b
cmp esi, 0x801
je 0x40264b
cmp esi, 0x803
je 0x40264b
or esi, 0xffffffff
jmp 0x4026a4
push ecx
call fcn.00430310
add esp, 4
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
lea eax, [eax + ecx*4]
add eax, 0x400
imul eax, edi
lea eax, [eax*4 + 0x1c5dc]
push eax
call fcn.00462ae5
add esp, 4
mov dword [esp + 0x64], eax
test eax, eax
jne 0x402682
lea esi, [eax - 7]
jmp 0x4026a4
mov edx, dword [esp + 0x54]
mov ecx, eax
push esi
push edi
call fcn.00406460
mov esi, eax
add esp, 8
test esi, esi
je 0x4026f1
push dword [esp + 0x64]
call fcn.004622dc
add esp, 4
mov ecx, esi
call fcn.004043a0
push eax
push str.Cannot_create_encoder:__s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
push 0
call fcn.004622dc
add esp, 4
push 0
call fcn.004622dc
add esp, 4
push 0
call fcn.004622dc
add esp, 4
mov dword [esp + 0x48], 0
xor ecx, ecx
jmp 0x403db1
push dword [esp + 0xc8]
mov esi, dword [esp + 0x68]
push 0xfa2
push esi
call fcn.0040b240
mov edi, dword [esp + 0x68]
add esp, 0xc
push edi
push 0xfa8
push esi
call fcn.0040b240
add esp, 0xc
push dword [esp + 0xf4]
push 0xfa6
push esi
call fcn.0040b240
add esp, 0xc
push dword [esp + 0xf0]
push 0xfb4
push esi
call fcn.0040b240
add esp, 0xc
push dword [esp + 0xec]
push 0xfaa
push esi
call fcn.0040b240
add esp, 0xc
push dword [esp + 0x118]
push 0xfac
push esi
call fcn.0040b240
add esp, 0xc
push dword [esp + 0xe8]
push 0xfb6
push esi
call fcn.0040b240
add esp, 0xc
push dword [esp + 0x80]
push 0xfb0
push esi
call fcn.0040b240
add esp, 0xc
push dword [esp + 0x13c]
push 0xfae
push esi
call fcn.0040b240
add esp, 0xc
lea eax, [esp + 0x108]
push eax
push 0xfbb
push esi
call fcn.0040b240
add esp, 0xc
push 0x10
push 0xfc4
push esi
call fcn.0040b240
add esp, 0xc
push 0x1388
push 0xfc8
push esi
call fcn.0040b240
mov eax, dword [esp + 0x78]
add esp, 0xc
test eax, eax
jle 0x402806
push eax
push 0xfd2
push esi
call fcn.0040b240
add esp, 0xc
jmp 0x402806
mov edi, dword [esp + 0x5c]
cmp dword [esp + 0x84], 0
jne 0x402911
mov eax, dword [esp + 0x54]
cmp eax, 0xbb80
je 0x40283b
cmp eax, 0x5dc0
je 0x40283b
cmp eax, 0x3e80
je 0x40283b
cmp eax, 0x2ee0
je 0x40283b
cmp eax, 0x1f40
jne 0x402849
mov esi, dword [esp + 0x68]
cmp esi, 1
je 0x40284e
cmp esi, 2
je 0x40284e
or esi, 0xffffffff
jmp 0x4028a7
push ecx
call fcn.00430310
add esp, 4
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
add ecx, 0x818
imul ecx, esi
lea eax, [ecx + eax*8]
lea eax, [eax*4 + 0x1f938]
push eax
call fcn.00462ae5
add esp, 4
mov dword [esp + 0x7c], eax
test eax, eax
jne 0x402886
lea esi, [eax - 7]
jmp 0x4028a7
mov edx, dword [esp + 0x54]
mov ecx, eax
push esi
call fcn.00404540
mov esi, eax
add esp, 4
test esi, esi
je 0x4028f6
push dword [esp + 0x7c]
call fcn.004622dc
add esp, 4
mov ecx, esi
call fcn.004043a0
push eax
push str.Cannot_create_decoder:__s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
push dword [esp + 0x64]
call fcn.004622dc
add esp, 4
push 0
call fcn.004622dc
add esp, 4
push 0
call fcn.004622dc
add esp, 4
mov dword [esp + 0x48], 0
xor ecx, ecx
jmp 0x403db1
push dword [esp + 0x104]
push 0xfaa
push dword [esp + 0x84]
call fcn.00405cc0
add esp, 0xc
cmp edi, 0x44d
jg 0x402931
je 0x40292a
cmp edi, 0xfffffc18
jne case.default.0x40293c
mov eax, str.auto_bandwidth
jmp 0x402964
mov eax, str.narrowband
jmp 0x402964
lea eax, [edi - 0x44e]
cmp eax, 3
ja case.default.0x40293c
jmp dword [eax*4 + 0x403ed8]
mov eax, str.mediumband
jmp 0x402964
mov eax, str.wideband
jmp 0x402964
mov eax, str.superwideband
jmp 0x402964
mov eax, str.fullband
jmp 0x402964
mov eax, str.unknown
cmp dword [esp + 0xcc], 0
je 0x402994
push dword [esp + 0x68]
push dword [esp + 0x58]
push str.Decoding_with__ld_Hz_output___d_channels__n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
mov ebx, dword [esp + 0x5c]
add esp, 0x10
jmp 0x4029d3
movd xmm0, dword [esp + 0xc8]
mov ebx, dword [esp + 0x4c]
cvtdq2pd xmm0, xmm0
push ebx
push eax
sub esp, 8
mulsd xmm0, qword [0x92b4a8]
movsd qword [esp], xmm0
push dword [esp + 0x64]
push str.Encoding__ld_Hz_input_at__.3f_kb_s_in__s_with__d_sample_frames._n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0x1c
imul esi, dword [esp + 0x68], 0x2ee00
push esi
call fcn.00462ae5
add esp, 4
mov dword [esp + 0x70], eax
push esi
call fcn.00462ae5
add esp, 4
mov dword [esp + 0x90], eax
push esi
call fcn.00462ae5
add esp, 4
mov dword [esp + 0xa0], eax
push 1
push dword [esp + 0x54]
call fcn.0045b175
mov esi, dword [esp + 0x5c]
add esp, 8
cmp dword [esp + 0xbc], 0
mov edi, eax
mov dword [esp + 0x48], edi
je 0x402b3a
mov eax, 0x51eb851f
imul esi
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jne 0x402a4d
mov ecx, 0x1389
jmp 0x402b20
mov eax, 0x51eb851f
imul esi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jne 0x402a6c
mov ecx, 0x138a
jmp 0x402b20
mov eax, 0x51eb851f
imul esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jne 0x402a8b
mov ecx, 0x138b
jmp 0x402b20
cmp ebx, dword [esp + 0x144]
jne 0x402a9e
mov ecx, 0x138c
jmp 0x402b20
mov eax, 0x51eb851f
imul esi
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jne 0x402abd
mov ecx, 0x138d
jmp 0x402b20
lea ecx, [esi + esi*2]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jne 0x402adc
mov ecx, 0x138e
jmp 0x402b20
lea ecx, [esi*4]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jne 0x402aff
mov ecx, 0x138f
jmp 0x402b20
lea ecx, [esi + esi*4]
mov eax, 0x51eb851f
imul ecx
xor ecx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
setne cl
add ecx, 0x1390
push ecx
push 0xfc8
push dword [esp + 0x6c]
call fcn.0040b240
add esp, 0xc
mov dword [esp + 0x4c], 0x17700
push 0x36c
call fcn.00462ae5
mov ebx, eax
add esp, 4
mov dword [esp + 0xac], ebx
test ebx, ebx
je 0x402ba8
mov ecx, ebx
mov dword [ebx + 0x360], 0
call fcn.00412fc0
test eax, eax
jne 0x402b8a
mov dword [ebx + 0x360], 1
call fcn.0040f300
mov dword [ebx + 0x364], eax
mov dword [ebx + 0x368], 0xd8eddec0
jmp 0x402bb3
call fcn.0040f300
push ebx
mov dword [ebx + 0x364], eax
mov dword [ebx + 0x368], 0xd8eddec0
call fcn.004622dc
add esp, 4
mov dword [esp + 0xac], 0
push 0x2960
call fcn.00462ae5
mov dword [esp + 0xf8], eax
add esp, 4
mov eax, dword [esp + 0x184]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0x180]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x84], eax
cmp dword [esp + 0x148], 0
mov ebx, 0x14
je 0x402c27
mov esi, dword [esp + 0x94]
xor ecx, ecx
mov dword [esp + 0x4c], esi
mov dword [esp + 0x148], ecx
jmp 0x402d6b
cmp dword [esp + 0x164], 0
je 0x402d67
call fcn.0045b80e
cdq
idiv ebx
test edx, edx
jne 0x402d67
call fcn.0045b80e
cdq
mov ecx, 6
idiv ecx
mov ebx, edx
mov dword [esp + 0x94], ebx
cmp ebx, 5
ja case.default.0x402c64
jmp dword [ebx*4 + 0x403ee8]
mov eax, 0x51eb851f
imul esi
sar edx, 7
jmp 0x402cbb
mov eax, 0x51eb851f
imul esi
sar edx, 6
jmp 0x402cbb
mov eax, 0x51eb851f
imul esi
sar edx, 5
jmp 0x402cbb
mov ebx, dword [esp + 0x144]
jmp 0x402cc2
mov eax, 0x51eb851f
imul esi
sar edx, 3
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jmp 0x402d17
lea ecx, [esi + esi*2]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov dword [esp + 0x94], ebx
mov eax, 0x51eb851f
imul esi
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ebx, ecx
jge 0x402d1e
mov eax, dword [esp + 0x10c]
mov esi, dword [esp + 0xc8]
cdq
xor eax, edx
sub eax, edx
sub esi, eax
mov eax, dword [esp + 0x54]
lea edi, [eax + eax*8]
shl edi, 2
nop dword [eax]
mov eax, edi
cdq
idiv ebx
cmp esi, eax
jg 0x402d0f
add ebx, ebx
cmp ebx, ecx
jl 0x402d00
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x54]
mov dword [esp + 0x94], ebx
mov eax, 0x51eb851f
imul esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jge 0x402d5f
mov esi, dword [esp + 0x4c]
cmp esi, eax
jl 0x402d5f
mov ebx, dword [esp + 0x64]
push 0x3ea
push 0x2afa
push ebx
call fcn.0040b240
add esp, 0xc
mov dword [esp + 0x148], 1
jmp 0x402d6f
mov esi, ebx
mov dword [esp + 0x4c], esi
jmp 0x402d6b
mov esi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x64]
cmp dword [esp + 0x168], 0
je 0x402db4
call fcn.0045b80e
cdq
mov ecx, 0x1e
idiv ecx
test edx, edx
jne 0x402db4
call fcn.0045b80e
call fcn.0045b80e
and eax, 0x80000003
jns 0x402da0
dec eax
or eax, 0xfffffffc
inc eax
neg eax
sbb eax, eax
inc eax
push eax
push 0xfac
push ebx
call fcn.0040b240
add esp, 0xc
cmp dword [esp + 0xcc], 0
je 0x40307a
mov esi, dword [esp + 0xa8]
lea eax, [esp + 0x5c]
push esi
push 4
push 1
push eax
call fcn.00462a2b
add esp, 0x10
cmp eax, 4
jne 0x402e90
movzx ebx, byte [esp + 0x5c]
movzx eax, byte [esp + 0x5d]
shl ebx, 8
or ebx, eax
movzx eax, byte [esp + 0x5e]
shl ebx, 8
or ebx, eax
movzx eax, byte [esp + 0x5f]
shl ebx, 8
or ebx, eax
mov dword [esp + 0x80], ebx
cmp ebx, dword [esp + 0x50]
jg 0x403c5d
test ebx, ebx
js 0x403c5d
push esi
push 4
lea eax, [esp + 0x64]
push 1
push eax
call fcn.00462a2b
add esp, 0x10
cmp eax, 4
jne 0x402e90
movzx ecx, byte [esp + 0x5c]
movzx eax, byte [esp + 0x5d]
shl ecx, 8
or ecx, eax
movzx eax, byte [esp + 0x5e]
shl ecx, 8
or ecx, eax
movzx eax, byte [esp + 0x5f]
push esi
push ebx
shl ecx, 8
or ecx, eax
push 1
push edi
mov dword [esp + 0x150], ecx
call fcn.00462a2b
add esp, 0x10
cmp eax, ebx
je 0x40332b
push eax
push ebx
push str.Ran_out_of_input__expecting__d_bytes_got__d_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0x10
mov edi, dword [esp + 0x8c]
mov esi, dword [esp + 0xb8]
mov ebx, dword [esp + 0x4c]
movsd xmm7, qword [esp + 0x128]
movsd xmm6, qword [esp + 0xc0]
test esi, esi
jle 0x402ecb
movd xmm0, esi
movaps xmm1, xmm6
cvtdq2pd xmm0, xmm0
divsd xmm1, xmm0
cvttsd2si ebx, xmm1
sub esi, dword [esp + 0x118]
comisd xmm6, xmmword [0x92b588]
jb 0x403d26
test esi, esi
jle 0x403d26
test ebx, ebx
je 0x403d26
movd xmm1, dword [esp + 0x54]
movaps xmm0, xmm7
mulsd xmm0, qword [0x92b4a8]
sub esp, 8
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [esp + 0xc8], xmm1
divsd xmm0, xmm6
movsd qword [esp], xmm0
push str.average_bitrate:______________7.3f_kb_s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
movsd xmm0, qword [0x92b588]
add esp, 8
movd xmm1, ebx
cvtdq2pd xmm1, xmm1
divsd xmm0, xmm1
movsd xmm1, qword [esp + 0x160]
mulsd xmm1, qword [0x92b4a8]
movsd qword [esp + 0xe0], xmm0
mulsd xmm1, qword [esp + 0xc8]
mulsd xmm1, xmm0
movsd qword [esp], xmm1
push str.maximum_bitrate:______________7.3f_kb_s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0x10
cmp dword [esp + 0x78], 0
jne 0x402fef
movsd xmm2, qword [esp + 0x150]
sub esp, 8
mulsd xmm2, qword [0x92b4a8]
movd xmm0, edi
movd xmm1, ebx
cvtdq2pd xmm0, xmm0
mulsd xmm2, qword [esp + 0xc8]
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
addsd xmm0, qword [0x92b378]
divsd xmm2, xmm0
movsd qword [esp], xmm2
push str.active_bitrate:_______________7.3f_kb_s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0x10
movsd xmm1, qword [esp + 0x110]
sub esp, 8
movsd xmm2, qword [esp + 0x130]
movd xmm0, esi
cvtdq2pd xmm0, xmm0
mulsd xmm2, xmm2
divsd xmm1, xmm0
mulsd xmm0, xmm0
divsd xmm2, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm2
maxsd xmm1, qword [0x92b2a0]
sqrtsd xmm0, xmm1
movsd xmm1, qword [esp + 0xe0]
mulsd xmm0, qword [0x92b4a8]
mulsd xmm1, qword [esp + 0xc8]
mulsd xmm0, xmm1
movsd qword [esp], xmm0
push str.bitrate_standard_deviation:___7.3f_kb_s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0x10
mov dword [esp + 0xd4], 0
jmp 0x403d64
mov ebx, dword [esp + 0x98]
test ebx, ebx
je 0x4030cf
mov esi, dword [esp + 0x134]
mov edi, dword [esp + 0x64]
add esi, esi
push dword [ebx + esi*8 + 4]
push 0xfa8
push edi
call fcn.0040b240
add esp, 0xc
push dword [ebx + esi*8]
push 0x2afa
push edi
call fcn.0040b240
add esp, 0xc
push dword [ebx + esi*8 + 0xc]
push 0xfb6
push edi
call fcn.0040b240
mov esi, dword [ebx + esi*8 + 8]
add esp, 0xc
mov dword [esp + 0x4c], esi
push dword [esp + 0xa8]
mov eax, esi
sub eax, dword [esp + 0x120]
push eax
mov eax, dword [esp + 0x70]
add eax, eax
push eax
push dword [esp + 0xac]
call fcn.00462a2b
mov ecx, dword [esp + 0x78]
mov ebx, eax
cdq
add esp, 0x10
add dword [esp + 0xb0], eax
mov edi, ecx
mov dword [esp + 0x124], ebx
adc dword [esp + 0xe8], edx
xor edx, edx
imul edi, ebx
test edi, edi
jle 0x403176
mov ebx, dword [esp + 0xa0]
mov eax, ecx
imul eax, dword [esp + 0x11c]
mov ecx, dword [esp + 0x70]
lea esi, [ecx + eax*2]
nop word [eax + eax]
movzx ecx, byte [ebx + edx*2 + 1]
lea esi, [esi + 2]
movzx eax, byte [ebx + edx*2]
inc edx
shl cx, 8
or cx, ax
mov eax, 0xffff8000
xor cx, ax
add cx, ax
mov word [esi - 2], cx
cmp edx, edi
jl 0x403140
mov ebx, dword [esp + 0x124]
mov esi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x11c]
add eax, ebx
cmp eax, esi
jge 0x4031c2
imul eax, dword [esp + 0x68]
imul ecx, esi
cmp eax, ecx
jge 0x4031a3
mov edx, dword [esp + 0x70]
sub ecx, eax
lea edi, [edx + eax*2]
xor eax, eax
shr ecx, 1
rep stosd dword es:[edi], eax
adc ecx, ecx
rep stosw word es:[edi], ax
cmp dword [esp + 0xe4], 0
jne 0x4031b7
cmp dword [esp + 0xe0], 0
je 0x4031c2
mov dword [esp + 0x100], 1
push dword [esp + 0x50]
mov edi, dword [esp + 0x4c]
mov edx, dword [esp + 0x74]
mov ecx, dword [esp + 0x68]
push edi
push esi
call fcn.0040b150
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x80], ebx
test ebx, ebx
js 0x403d4b
cmp ebx, 1
jge 0x4031f7
or esi, 0xffffffff
jmp 0x403223
movzx eax, byte [edi]
and eax, 3
jne 0x403204
lea esi, [eax + 1]
jmp 0x403223
cmp eax, 3
je 0x403210
mov esi, 2
jmp 0x403223
cmp ebx, 2
jge 0x40321c
mov esi, 0xfffffffc
jmp 0x403223
movzx esi, byte [edi + 1]
and esi, 0x3f
mov edx, dword [esp + 0x54]
mov ecx, edi
call fcn.0040c0d0
mov ecx, dword [esp + 0x4c]
mov edx, eax
mov eax, dword [esp + 0x68]
imul edx, esi
mov esi, eax
sub ecx, edx
mov dword [esp + 0x170], edx
imul esi, ecx
mov dword [esp + 0x11c], ecx
xor ecx, ecx
test esi, esi
jle 0x403277
mov edi, dword [esp + 0x70]
imul eax, edx
mov edx, dword [esp + 0x70]
lea edx, [edx + eax*2]
mov ax, word [edx]
lea edx, [edx + 2]
mov word [edi + ecx*2], ax
inc ecx
cmp ecx, esi
jl 0x403264
mov edi, dword [esp + 0x48]
mov eax, dword [esp + 0x10c]
test eax, eax
je 0x4032d3
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0x14c]
add ecx, eax
test edx, edx
je 0x4032ac
cmp ecx, edx
jg 0x4032a3
cmp ecx, dword [esp + 0x18c]
jge 0x4032ac
neg eax
mov dword [esp + 0x10c], eax
cmp ecx, 0x3e8
mov eax, 0x3e8
cmovl ecx, eax
push ecx
push 0xfa2
push dword [esp + 0x6c]
mov dword [esp + 0xd4], ecx
call fcn.0040b240
add esp, 0xc
lea eax, [esp + 0x140]
push eax
push 0xfbf
push dword [esp + 0x6c]
call fcn.0040b240
mov eax, dword [esp + 0x144]
add esp, 0xc
add eax, dword [esp + 0x4c]
mov dword [esp + 0x138], eax
cmp eax, dword [esp + 0x16c]
jle 0x40332b
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x134]
dec eax
cmp ecx, eax
jge 0x40332b
inc ecx
mov dword [esp + 0x134], ecx
xor ecx, ecx
mov dword [esp + 0x138], ecx
cmp dword [esp + 0xfc], 0
je 0x4033f4
mov esi, dword [esp + 0xf8]
mov eax, ebx
shr eax, 0x18
mov byte [esp + 0x58], al
mov eax, ebx
shr eax, 0x10
mov byte [esp + 0x59], al
mov eax, ebx
push esi
shr eax, 8
push 4
mov byte [esp + 0x62], al
lea eax, [esp + 0x60]
push 1
push eax
mov byte [esp + 0x6b], bl
call fcn.0045d74a
add esp, 0x10
cmp eax, 4
jne 0x403c7b
mov ecx, dword [esp + 0x140]
mov eax, ecx
shr eax, 0x18
mov byte [esp + 0x58], al
mov eax, ecx
shr eax, 0x10
mov byte [esp + 0x59], al
mov eax, ecx
push esi
shr eax, 8
push 4
mov byte [esp + 0x62], al
lea eax, [esp + 0x60]
push 1
push eax
mov byte [esp + 0x6b], cl
call fcn.0045d74a
add esp, 0x10
cmp eax, 4
jne 0x403c7b
push esi
push ebx
push 1
push edi
call fcn.0045d74a
add esp, 0x10
cmp eax, ebx
jne 0x403c7b
movd xmm0, dword [esp + 0x170]
cvtdq2pd xmm6, xmm0
addsd xmm6, qword [esp + 0xc0]
movsd qword [esp + 0xc0], xmm6
jmp 0x403a51
mov eax, dword [esp + 0x174]
mov dword [esp + 0x124], 0
mov dword [esp + 0x120], 0
test eax, eax
je 0x403439
lea ecx, [esp + 0xd0]
push ecx
push 0x47c784
push eax
call fcn.004010b0
add esp, 0xc
cmp eax, 1
jne 0x40345a
mov eax, dword [esp + 0xd0]
jmp 0x403463
mov esi, dword [esp + 0x13c]
test esi, esi
jle 0x40345a
call fcn.0045b80e
cdq
mov ecx, 0x64
idiv ecx
cmp edx, esi
jge 0x40345a
lea eax, [ecx - 0x63]
jmp 0x40345c
xor eax, eax
mov dword [esp + 0xd0], eax
test ebx, ebx
jne 0x403480
mov edx, dword [esp + 0x74]
mov eax, 1
inc edx
mov dword [esp + 0xd0], eax
mov dword [esp + 0x74], edx
xor ecx, ecx
jmp 0x40349a
test eax, eax
je 0x403491
mov edx, dword [esp + 0x74]
inc edx
xor ecx, ecx
mov dword [esp + 0x74], edx
jmp 0x40349a
mov edx, dword [esp + 0x74]
mov ecx, 1
test ecx, ecx
lea esi, [ecx + edx]
cmove esi, ecx
mov dword [esp + 0x180], esi
test eax, eax
jne 0x403540
test edx, edx
jle 0x403540
mov dword [esp + 0xbc], eax
lea eax, [esp + 0xbc]
push eax
push 0xfc7
push dword [esp + 0x84]
call fcn.00405cc0
mov eax, dword [esp + 0xc8]
xor ecx, ecx
imul eax, dword [esp + 0x80]
mov edx, dword [esp + 0x100]
test eax, eax
cmovs eax, ecx
mov ecx, 0xbb80
cmp eax, 0xbb80
cmovg eax, ecx
add esp, 8
lea ecx, [esp + 0x124]
push ecx
push dword [esp + 0x5c]
mov ecx, dword [esp + 0xb8]
push eax
push ebx
push edi
call fcn.00405f60
mov edx, dword [esp + 0x8c]
xor edi, edi
add esp, 0x18
mov dword [esp + 0xd4], eax
test eax, eax
cmovg edi, eax
mov dword [esp + 0x124], edi
xor ecx, ecx
mov dword [esp + 0xec], ecx
test esi, esi
jle 0x403a2c
lea eax, [edx - 1]
mov dword [esp + 0xf0], edx
mov dword [esp + 0xd8], eax
jmp 0x403577
mov ebx, dword [esp + 0x80]
mov edx, dword [esp + 0xfc]
mov esi, dword [esp + 0xcc]
mov edi, dword [esp + 0xe4]
mov dword [esp + 0x120], edx
mov edx, dword [esp + 0xb4]
mov dword [esp + 0x178], edx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x104], edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 0xbc], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x6c], 0
cmp ecx, eax
jne 0x403772
mov al, byte [edx]
mov ebx, 1
mov byte [esp + 0x63], al
test al, al
js 0x40376b
mov ecx, dword [esp + 0x48]
mov edx, 0xbb80
call fcn.0040c0d0
mov ecx, eax
cmp ecx, 0x3c0
jle 0x40360c
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 9
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edx, dword [esp + 0x80]
lea eax, [esp + 0x258]
mov ecx, dword [esp + 0x48]
and byte [esp + 0x63], 4
push 0
push 0
push 0
push 0
push eax
lea eax, [esp + 0x1ac]
push eax
push 0
push 0
call fcn.0040c150
add esp, 0x20
test eax, eax
jle 0x403679
mov eax, dword [esp + 0x198]
mov ecx, 7
sub cl, bl
mov dl, byte [eax]
movzx eax, dl
shr eax, cl
and eax, 1
cmp byte [esp + 0x63], 0
je 0x403679
test eax, eax
jne 0x403674
mov cl, 3
sub cl, bl
add cl, cl
shr dl, cl
test dl, 1
je 0x403679
mov eax, 1
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xe0]
mov dword [esp + 0xa4], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x178]
mov dword [esp + 0xb4], ecx
mov ecx, dword [esp + 0x120]
mov dword [esp + 0xfc], ecx
mov dword [esp + 0xe0], ebx
mov dword [esp + 0xe4], edi
mov dword [esp + 0xcc], esi
test eax, eax
je 0x403760
lea eax, [esp + 0x6c]
push eax
push 0xfc7
push dword [esp + 0x84]
call fcn.00405cc0
mov edx, dword [esp + 0x54]
add esp, 0xc
mov ecx, dword [esp + 0x7c]
push 1
push dword [esp + 0x70]
push dword [esp + 0x98]
push dword [esp + 0x8c]
call fcn.00405b50
mov edx, dword [esp + 0x114]
mov ecx, eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x188]
mov dword [esp + 0xc4], edx
mov edx, dword [esp + 0x130]
mov dword [esp + 0xb4], eax
mov dword [esp + 0x10c], edx
mov dword [esp + 0xf0], ebx
mov dword [esp + 0xf4], edi
mov dword [esp + 0xdc], esi
jmp 0x40381f
mov ecx, dword [esp + 0xec]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x80]
cmp ecx, dword [esp + 0x74]
jge 0x4037f6
mov ebx, dword [esp + 0x7c]
lea eax, [esp + 0x6c]
push eax
push 0xfc7
push ebx
call fcn.00405cc0
add esp, 0xc
cmp dword [esp + 0x124], 0
jle 0x4037d0
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0xf0]
mov edx, dword [esp + 0xf4]
push ecx
push dword [esp + 0x94]
imul eax, ecx
mov ecx, ebx
push eax
call fcn.00406250
mov ecx, eax
add esp, 0xc
mov eax, dword [esp + 0xa4]
jmp 0x403822
push 0
push dword [esp + 0x70]
xor edx, edx
mov ecx, ebx
push dword [esp + 0x98]
push 0
call fcn.00405b50
mov ecx, eax
add esp, 0x10
mov eax, dword [esp + 0xa4]
jmp 0x403822
mov ecx, dword [esp + 0x7c]
push 0
push 0x17700
push dword [esp + 0x98]
mov dword [esp + 0x78], 0x17700
push ebx
call fcn.00405b50
mov ecx, eax
mov eax, dword [esp + 0xb4]
add esp, 0x10
mov dword [esp + 0x6c], ecx
test ecx, ecx
jle 0x403944
mov ebx, dword [esp + 0x84]
mov edi, dword [esp + 0x88]
test eax, eax
jne 0x403873
mov eax, ecx
cdq
add eax, ebx
adc edx, edi
cmp edx, dword [esp + 0xe8]
jb 0x403873
ja 0x40385b
cmp eax, dword [esp + 0xb0]
jbe 0x403873
mov ecx, dword [esp + 0xb0]
sub ecx, ebx
mov dword [esp + 0x100], 1
mov dword [esp + 0x6c], ecx
mov esi, dword [esp + 0x108]
cmp ecx, esi
jle 0x40392c
mov edi, dword [esp + 0x68]
mov eax, ecx
sub eax, esi
xor edx, edx
imul eax, edi
test eax, eax
jle 0x4038d6
mov ebx, dword [esp + 0xa0]
nop word [eax + eax]
mov eax, edi
imul eax, esi
mov esi, dword [esp + 0x90]
add eax, edx
movzx eax, word [esi + eax*2]
mov byte [ebx + edx*2], al
sar eax, 8
mov byte [ebx + edx*2 + 1], al
mov eax, ecx
mov esi, dword [esp + 0x108]
inc edx
sub eax, esi
imul eax, edi
cmp edx, eax
jl 0x4038a0
mov ebx, dword [esp + 0x84]
push dword [esp + 0xf8]
mov eax, dword [esp + 0x6c]
mov edi, ecx
sub ecx, esi
sub edi, esi
push ecx
lea ecx, [eax + eax]
push ecx
push dword [esp + 0xac]
call fcn.0045d74a
add esp, 0x10
cmp eax, edi
jne 0x403c7b
mov esi, dword [esp + 0x108]
mov eax, edi
mov edi, dword [esp + 0x88]
mov ecx, dword [esp + 0x6c]
cdq
add ebx, eax
mov dword [esp + 0x84], ebx
adc edi, edx
cmp ecx, esi
mov dword [esp + 0x88], edi
jge 0x403939
sub esi, ecx
mov dword [esp + 0x108], esi
jmp 0x403984
xor esi, esi
mov dword [esp + 0x108], esi
jmp 0x403984
cmp ecx, 0xfffffff9
jl 0x40395b
lea eax, [ecx*4]
mov ecx, 0x47d024
sub ecx, eax
mov eax, dword [ecx]
jmp 0x403960
mov eax, str.unknown_error
push eax
push str.error_decoding_frame:__s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
mov ecx, dword [esp + 0x78]
add esp, 0xc
mov edi, dword [esp + 0x88]
dec dword [esp + 0xf0]
mov eax, dword [esp + 0xd8]
movd xmm0, ecx
mov ecx, dword [esp + 0xec]
cvtdq2pd xmm6, xmm0
inc ecx
mov dword [esp + 0xec], ecx
addsd xmm6, qword [esp + 0xc0]
movsd qword [esp + 0xc0], xmm6
cmp ecx, dword [esp + 0x180]
jl 0x403570
mov eax, dword [esp + 0x100]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0xd8], eax
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0xb4]
movsd qword [esp + 0xc0], xmm6
movsd qword [esp + 0xc0], xmm6
mov dword [esp + 0xdc], edi
mov dword [esp + 0x88], edi
test eax, eax
jne 0x403a58
lea eax, [esp + 0x194]
push eax
push 0xfbf
push dword [esp + 0x84]
call fcn.00405cc0
movsd xmm6, qword [esp + 0xcc]
add esp, 0xc
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0xd0]
test ecx, ecx
je 0x403a8a
test eax, eax
jne 0x403a8a
test edx, edx
jne 0x403a8a
cmp dword [esp + 0x17c], eax
jne 0x403a8a
mov eax, dword [esp + 0x194]
cmp eax, ecx
jne 0x403c98
mov esi, dword [esp + 0xb8]
mov ecx, edx
mov ebx, dword [esp + 0x4c]
xor eax, eax
test ecx, ecx
mov dword [esp + 0x17c], ecx
cmovne eax, dword [esp + 0x74]
mov dword [esp + 0x74], eax
cmp esi, dword [esp + 0x118]
jl 0x403c18
mov ecx, dword [esp + 0x80]
lea eax, [ecx*8]
imul ecx, ecx
movd xmm5, eax
cvtdq2pd xmm5, xmm5
mov eax, dword [esp + 0x78]
shl ecx, 6
movaps xmm0, xmm5
movaps xmm7, xmm5
maxsd xmm0, qword [esp + 0x158]
addsd xmm7, qword [esp + 0x128]
movsd qword [esp + 0x158], xmm0
movd xmm0, ecx
movsd qword [esp + 0x128], xmm7
cvtdq2pd xmm4, xmm0
addsd xmm4, qword [esp + 0x110]
movsd qword [esp + 0x110], xmm4
test eax, eax
jne 0x403c2e
mov edx, dword [esp + 0x68]
xor ecx, ecx
imul edx, ebx
xorps xmm4, xmm4
cmp edx, 4
jl 0x403baa
mov edi, dword [esp + 0x70]
lea esi, [edx - 4]
shr esi, 2
add edi, 4
inc esi
lea ecx, [esi*4]
nop word [eax + eax]
movsx eax, word [edi - 4]
xorps xmm3, xmm3
xorps xmm0, xmm0
xorps xmm1, xmm1
xorps xmm2, xmm2
cvtsi2sd xmm3, eax
movsx eax, word [edi - 2]
cvtsi2sd xmm0, eax
movsx eax, word [edi]
mulsd xmm3, xmm3
cvtsi2sd xmm1, eax
movsx eax, word [edi + 2]
add edi, 8
mulsd xmm0, xmm0
addsd xmm4, xmm3
mulsd xmm1, xmm1
cvtsi2sd xmm2, eax
addsd xmm4, xmm0
mulsd xmm2, xmm2
addsd xmm4, xmm1
addsd xmm4, xmm2
sub esi, 1
jne 0x403b50
mov esi, dword [esp + 0xb8]
cmp ecx, edx
jge 0x403bcf
mov ebx, dword [esp + 0x70]
movsx eax, word [ebx + ecx*2]
inc ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm0
addsd xmm4, xmm0
cmp ecx, edx
jl 0x403bb2
mov ebx, dword [esp + 0x4c]
movd xmm0, edx
cvtdq2pd xmm0, xmm0
mov edi, dword [esp + 0x8c]
mov eax, dword [esp + 0x78]
divsd xmm4, xmm0
comisd xmm4, xmmword [0x92b660]
movsd xmm4, qword [esp + 0x110]
jbe 0x403c35
addsd xmm5, qword [esp + 0x150]
inc edi
mov dword [esp + 0x8c], edi
movaps xmm0, xmm5
movsd qword [esp + 0x150], xmm0
jmp 0x403c3e
movsd xmm4, qword [esp + 0x110]
movsd xmm7, qword [esp + 0x128]
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0x8c]
movsd xmm0, qword [esp + 0x150]
inc esi
cmp dword [esp + 0x100], 0
mov dword [esp + 0xb8], esi
jne 0x403cbf
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x54]
jmp 0x402bff
push ebx
push str.Invalid_payload_length:__d_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
jmp 0x402e90
push str.Error_writing._n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 8
jmp 0x403d64
push eax
push ecx
mov ecx, dword [esp + 0xc0]
push ecx
push str.Error:_Range_coder_state_mismatch_between_encoder_and_decoder_in_frame__ld:_0x_8lx_vs_0x_8lx_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0x14
jmp 0x403d64
movsd xmm1, qword [esp + 0x158]
movsd qword [esp + 0x110], xmm7
movsd qword [esp + 0x110], xmm0
movsd qword [esp + 0x158], xmm1
movsd qword [esp + 0x110], xmm4
movsd qword [esp + 0x128], xmm7
movsd qword [esp + 0x158], xmm1
movsd qword [esp + 0x150], xmm0
movsd qword [esp + 0x110], xmm4
movsd qword [esp + 0xc0], xmm6
test eax, eax
je 0x402ecb
jmp 0x402eb4
push str.bitrate_statistics_are_undefined_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 8
mov dword [esp + 0xd4], 0
jmp 0x403d64
push ebx
push str.opus_encode___returned__d_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
push dword [esp + 0x64]
call fcn.004622dc
add esp, 4
push dword [esp + 0x7c]
call fcn.004622dc
add esp, 4
push dword [esp + 0xf4]
call fcn.004622dc
mov ecx, dword [esp + 0xb0]
add esp, 4
mov ebx, dword [esp + 0xa8]
test ecx, ecx
je 0x403da9
mov dword [ecx + 0x368], 0xde57801d
jmp 0x403db1
mov eax, dword [esp + 0x48]
mov dword [esp + 0x48], eax
push ecx
call fcn.004622dc
add esp, 4
push dword [esp + 0x48]
call fcn.004622dc
add esp, 4
push ebx
call fcn.0045b4c9
mov eax, dword [esp + 0xfc]
add esp, 4
test eax, eax
je 0x403e6e
push eax
call fcn.0045b4c9
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xd8], eax
jmp 0x403e6b
push 0x5dc
push str.max_payload_bytes_must_be_between_0_and__d_n
jmp 0x402437
push str.Opus_demo_supports_only_1_or_2_channels._n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
push 0
call fcn.004622dc
add esp, 0xc
push 0
call fcn.004622dc
add esp, 4
push 0
call fcn.004622dc
add esp, 4
push 0
call fcn.004622dc
add esp, 4
push 0
call fcn.004622dc
add esp, 4
push dword [esp + 0x70]
call fcn.004622dc
add esp, 4
push dword [esp + 0x90]
call fcn.004622dc
add esp, 4
push dword [esp + 0xa0]
call fcn.004622dc
mov ecx, dword [esp + 0x2c0]
add esp, 4
mov eax, dword [esp + 0xd4]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004575d6
mov esp, ebp
pop ebp
ret
push dword [esi + edi*4 + 4]
push str.failed_to_open_loss_file__s_n
push 2
call fcn.0045b318
add esp, 4
push eax
call fcn.00401050
add esp, 0xc
push 1
call fcn.0045b15f
nop
inc ebx
sub dword [eax], eax
dec edx
sub dword [eax], eax
push ecx
sub dword [eax], eax
pop eax
sub dword [eax], eax
imul ebp, dword [eax + eax*2], 0
ja 4210458
inc eax
add byte [ebx - 0x70ffbfd4], al
sub al, 0x40
add byte [eax - 0x51ffbfd4], bl
sub al, 0x40
invalid