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

Disassembly:
mov eax, 0x2080
call fcn.1011c970
mov eax, dword [0x102f0d80]
xor eax, esp
mov dword [esp + 0x207c], eax
mov eax, dword [esp + 0x2088]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x2090]
xor ebx, ebx
mov dword [esp + 0x68], eax
xor ebp, ebp
xor eax, eax
mov dword [esp + 0xc], 0
push edi
mov dword [esp + 0x44], ebp
mov dword [esp + 0x18], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
cmp dword [esi + 0x1d54], eax
jl 0x1006d811
jg 0x1006d803
cmp dword [esi + 0x1d50], 0xffffffff
jbe 0x1006d811
push str.Warning_:_filelength___0xffffffff._This_is_bad_____n
push esi
call fcn.1006ac00
add esp, 8
mov edi, dword [esi + 0x1da8]
mov dword [esp + 0x40], edi
test edi, edi
je 0x1006eb2a
push 0
push 0x10204ba4
push esi
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov dword [edi + 0xc], ebx
call fcn.100691b0
mov eax, dword [esp + 0x78]
xorps xmm0, xmm0
add esp, 0xc
movups xmmword [eax], xmm0
movups xmmword [eax + 0x10], xmm0
mov dword [esi + 0x1ce8], 0x20000000
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x10]
push ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x14], 0
push ecx
and eax, 1
mov dword [esp + 0x1c], 0
push eax
push str.Ejm4
push esi
call fcn.100691b0
add esp, 0x14
cmp dword [esp + 0x14], 0
je 0x1006eb97
cmp dword [esi + 0x90c], 0x30
jne 0x1006d8a3
test bl, 0x20
jne 0x1006eb10
push dword [esp + 0x10]
push esi
call fcn.1006c250
add esp, 4
push edx
push eax
push dword [esp + 0x20]
lea eax, [esi + 0x1e4c]
push eax
call fcn.1008ebd0
mov ecx, dword [esp + 0x28]
add esp, 0x14
cmp ecx, 0x4c505041
ja 0x1006e1eb
je 0x1006e0e6
cmp ecx, 0x454e4f4e
ja 0x1006dc0f
je 0x1006dbdd
cmp ecx, 0x444e5353
ja 0x1006db6c
je 0x1006d9a6
cmp ecx, 0x20296328
je 0x1006d918
cmp ecx, 0x21584653
je 0x1006e54d
jmp 0x1006e598
mov edi, dword [esp + 0x10]
test edi, edi
je 0x1006e463
cmp edi, 0x2000
jae 0x1006eb1a
mov eax, edi
and eax, 1
add eax, edi
push eax
lea eax, [esp + 0x88]
push eax
push 0x10203d40
push esi
call fcn.100691b0
mov eax, dword [esp + 0x20]
mov byte [esp + eax + 0x94], 0
lea eax, [esp + 0x94]
push dword [esp + 0x20]
push eax
call fcn.1006b990
lea eax, [esp + 0x9c]
push eax
push dword [esp + 0x30]
push str.__M_:__s_n
push esi
call fcn.1006ac00
lea eax, [esp + 0xac]
push eax
push 2
push esi
call fcn.1006bae0
mov edi, dword [esp + 0x44]
add esp, 0x34
mov eax, edi
and eax, 1
add edi, eax
mov dword [esp + 0x10], edi
jmp 0x1006e463
mov eax, ebx
and al, 0xc
cmp al, 4
jne 0x1006d9bc
push str._Valid_AIFC_files_should_have_an_FVER_chunk._n
push esi
call fcn.1006ac00
add esp, 8
push esi
call fcn.1006c250
sub eax, 8
mov dword [edi + 8], eax
lea eax, [esp + 0x6c]
push eax
lea eax, [esp + 0x6c]
sbb edx, 0
push eax
push 0x10204c6c
mov dword [edi + 0xc], edx
mov edi, dword [esp + 0x20]
push esi
call fcn.100691b0
lea eax, [edi - 8]
mov dword [esi + 0x1d74], 0
push esi
mov dword [esi + 0x1d70], eax
call fcn.1006c250
mov ecx, dword [esi + 0x1d50]
add esp, 0x18
mov ebx, dword [esi + 0x1d74]
sub ecx, eax
mov dword [esi + 0x1d68], eax
mov eax, dword [esi + 0x1d54]
sbb eax, edx
mov dword [esi + 0x1d6c], edx
mov edx, dword [esi + 0x1d70]
cmp ebx, eax
jg 0x1006da5c
jl 0x1006da35
cmp edx, ecx
ja 0x1006da5c
test ebx, ebx
jl 0x1006da5c
jg 0x1006da3f
test edx, edx
jb 0x1006da5c
push edi
push str._SSND_:__u_n
push esi
call fcn.1006ac00
mov edi, dword [esi + 0x1d68]
add esp, 0xc
mov ebx, dword [esi + 0x1d6c]
jmp 0x1006da9b
add ecx, 8
adc eax, 0
push eax
push ecx
push edi
push str._SSND_:__u__should_be__D__n
push esi
call fcn.1006ac00
mov ecx, dword [esi + 0x1d50]
add esp, 0x14
mov edi, dword [esi + 0x1d68]
sub ecx, edi
mov eax, dword [esi + 0x1d54]
mov ebx, dword [esi + 0x1d6c]
sbb eax, ebx
mov dword [esi + 0x1d70], ecx
mov dword [esi + 0x1d74], eax
mov edx, dword [esp + 0x64]
test edx, edx
je 0x1006dacc
xor ecx, ecx
mov eax, edx
add eax, edi
adc ecx, ebx
cmp eax, dword [esp + 0x68]
jne 0x1006dab5
test ecx, ecx
je 0x1006dacc
push edx
push str.__Offset_____:__u_n
push esi
call fcn.1006ac00
push dword [esp + 0x74]
push str.__Block_Size_:__u_____n
jmp 0x1006dae1
push edx
push str.__Offset_____:__u_n
push esi
call fcn.1006ac00
push dword [esp + 0x74]
push str.__Block_Size_:__u_n
push esi
call fcn.1006ac00
mov eax, dword [esp + 0x7c]
add esp, 0x18
add dword [esi + 0x1d68], eax
mov ecx, dword [esi + 0x1d68]
adc dword [esi + 0x1d6c], 0
sub dword [esi + 0x1d70], eax
mov eax, dword [esi + 0x1d70]
sbb dword [esi + 0x1d74], 0
add ecx, eax
mov edx, dword [esi + 0x1d6c]
mov edi, dword [esi + 0x1d74]
adc edx, edi
cmp edx, dword [esi + 0x1d54]
jg 0x1006db42
jl 0x1006db36
cmp ecx, dword [esi + 0x1d50]
jae 0x1006db42
mov dword [esi + 0x1d78], ecx
mov dword [esi + 0x1d7c], edx
mov ebx, dword [esp + 0x18]
or ebx, 0x20
cmp dword [esi + 0x1d28], 0
mov dword [esp + 0x18], ebx
je 0x1006e45f
push 0
push edx
push ecx
push esi
call fcn.1006c190
add esp, 0x10
jmp 0x1006e45f
cmp ecx, 0x454d414e
jne 0x1006e598
mov edi, dword [esp + 0x10]
test edi, edi
je 0x1006e463
cmp edi, 0x1ffe
jae 0x1006eb1a
mov eax, edi
and eax, 1
add eax, edi
push eax
lea eax, [esp + 0x88]
push eax
push 0x10203d40
push esi
call fcn.100691b0
mov eax, dword [esp + 0x20]
mov byte [esp + eax + 0x94], 0
lea eax, [esp + 0x94]
push eax
push dword [esp + 0x28]
push str.__M_:__s_n
push esi
call fcn.1006ac00
lea eax, [esp + 0xa4]
push eax
push 1
jmp 0x1006e0c9
mov eax, dword [esp + 0x10]
shr eax, 0x18
sub eax, 3
push eax
push ecx
push str.__M_:__d_n
push esi
mov dword [esp + 0x20], eax
call fcn.1006ac00
push dword [esp + 0x20]
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x1c
jmp 0x1006e45f
cmp ecx, 0x48545541
je 0x1006e069
cmp ecx, 0x4b414550
je 0x1006deb7
cmp ecx, 0x4b52414d
jne 0x1006e598
push dword [esp + 0x10]
push ecx
push str.__M_:__d_n
push esi
call fcn.1006ac00
lea eax, [esp + 0x2c]
mov dword [esp + 0x2c], 0
push eax
push 0x10204dc0
push esi
call fcn.100691b0
movzx ebp, word [esp + 0x38]
mov ebx, eax
push ebp
push str.__Count_:__u_n
push esi
mov dword [esp + 0x6c], ebp
call fcn.1006ac00
add esp, 0x28
cmp dword [edi + 0x14], 0
je 0x1006dc91
push str._Second_MARK_chunk_found._Throwing_away_the_first._n
push esi
call fcn.1006ac00
push dword [edi + 0x14]
call fcn.10128533
add esp, 0xc
push 8
push ebp
call fcn.10128b3a
add esp, 8
mov dword [edi + 0x14], eax
test eax, eax
je 0x1006eb62
cmp ebp, 0x9c4
jbe 0x1006dcd4
push str.__More_than_2500_markers__skipping__n
push esi
call fcn.1006ac00
mov eax, dword [esp + 0x18]
sub eax, ebx
push eax
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x14
jmp 0x1006e45b
mov eax, dword [esi + 0x1d38]
test eax, eax
je 0x1006dcf1
push eax
call fcn.10128533
add esp, 4
mov dword [esi + 0x1d38], 0
push ebp
call fcn.1006a600
add esp, 4
mov dword [esi + 0x1d38], eax
test eax, eax
je 0x1006eb62
mov dword [esp + 0x1c], 0
test ebp, ebp
je 0x1006de99
nop dword [eax + eax]
mov eax, dword [esp + 0x10]
cmp ebx, eax
jae 0x1006de9d
lea eax, [esp + 0x2f]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x38]
push eax
push str.E241
push esi
call fcn.100691b0
push dword [esp + 0x60]
add ebx, eax
movzx eax, word [esp + 0x48]
push eax
push str.___Mark_ID__:__u_n___Position_:__u_n
push esi
call fcn.1006ac00
movzx eax, word [esp + 0x40]
add esp, 0x24
movzx edx, word [esp + 0x30]
imul ecx, eax, 0x118
mov eax, dword [esi + 0x1d38]
mov dword [ecx + eax + 4], edx
movzx eax, word [esp + 0x1c]
imul ecx, eax, 0x118
mov eax, dword [esi + 0x1d38]
mov dword [ecx + eax + 8], 0
movzx eax, word [esp + 0x1c]
imul ecx, eax, 0x118
mov eax, dword [esi + 0x1d38]
mov dword [ecx + eax + 0xc], 0x61746164
movzx eax, word [esp + 0x1c]
imul ecx, eax, 0x118
mov eax, dword [esi + 0x1d38]
mov dword [ecx + eax + 0x10], 0
movzx eax, word [esp + 0x1c]
imul ecx, eax, 0x118
mov eax, dword [esi + 0x1d38]
mov dword [ecx + eax + 0x14], 0
movzx eax, word [esp + 0x1c]
mov ecx, dword [esi + 0x1d38]
imul edx, eax, 0x118
mov eax, dword [esp + 0x4c]
mov dword [edx + ecx + 0x18], eax
mov al, byte [esp + 0x2f]
movzx edi, al
test al, 1
jne 0x1006de03
inc edi
push edi
lea eax, [esp + 0x88]
push eax
push 0x10203d40
push esi
call fcn.100691b0
add ebx, eax
mov byte [esp + edi + 0x94], 0
lea eax, [esp + 0x94]
push eax
push str.___Name_____:__s_n
push esi
call fcn.1006ac00
lea eax, [esp + 0xa0]
push eax
movzx eax, word [esp + 0x3c]
imul ecx, eax, 0x118
mov eax, dword [esi + 0x1d38]
push 0x100
add ecx, 0x1c
add eax, ecx
push eax
call fcn.1006b9c0
mov edi, dword [esp + 0x68]
add esp, 0x28
movzx edx, word [esp + 0x1c]
mov ax, word [esp + 0x30]
mov ecx, dword [edi + 0x14]
mov word [ecx + edx*8], ax
movzx edx, word [esp + 0x1c]
mov ecx, dword [edi + 0x14]
mov eax, dword [esp + 0x4c]
mov dword [ecx + edx*8 + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
movzx eax, ax
cmp eax, ebp
jb 0x1006dd20
mov eax, dword [esp + 0x10]
inc dword [esp + 0x5c]
sub eax, ebx
push eax
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0xc
jmp 0x1006e45b
mov eax, ebx
and eax, 0x13
cmp al, 0x13
jne 0x1006eb58
push dword [esp + 0x10]
push ecx
push str._M_:__d_n
push esi
call fcn.1006ac00
mov eax, dword [esi + 0x1d1c]
add esp, 0x10
mov ecx, dword [esp + 0x10]
lea eax, [eax*8 + 8]
cmp ecx, eax
jne 0x1006eb34
cmp dword [esi + 0x1d34], 0
je 0x1006df1c
push str._Found_existing_peak_info__using_last_one._n
push esi
call fcn.1006ac00
push dword [esi + 0x1d34]
call fcn.10128533
add esp, 0xc
mov dword [esi + 0x1d34], 0
mov eax, dword [esi + 0x1d1c]
inc eax
shl eax, 4
push eax
push 1
call fcn.10128b3a
add esp, 8
mov dword [esi + 0x1d34], eax
test eax, eax
je 0x1006eb62
lea ecx, [eax + 8]
add eax, 4
push ecx
push eax
push 0x10204c6c
push esi
call fcn.100691b0
mov eax, dword [esi + 0x1d34]
mov ecx, str.__version____:__d_n
mov eax, dword [eax + 4]
cmp eax, 1
push eax
mov eax, str.__version____:__d___should_be_version_1__n
cmovne ecx, eax
push ecx
push esi
call fcn.1006ac00
mov eax, dword [esi + 0x1d34]
push dword [eax + 8]
push str.__time_stamp_:__d_n
push esi
call fcn.1006ac00
push str.____Ch___Position_______Value_n
push esi
call fcn.1006ac00
xor ebx, ebx
add esp, 0x30
cmp dword [esi + 0x1d1c], ebx
jle 0x1006e04a
xor edi, edi
lea eax, [esp + 0x74]
push eax
lea eax, [esp + 0x74]
push eax
push 0x10204ce8
push esi
call fcn.100691b0
movss xmm0, dword [esp + 0x80]
add esp, 8
mov eax, dword [esi + 0x1d34]
cvtps2pd xmm0, xmm0
movsd qword [edi + eax + 0x10], xmm0
mov ecx, dword [esi + 0x1d34]
mov eax, dword [esp + 0x7c]
mov dword [edi + ecx + 0x18], eax
mov dword [edi + ecx + 0x1c], 0
mov eax, dword [esi + 0x1d34]
movsd xmm0, qword [edi + eax + 0x10]
movsd qword [esp], xmm0
push dword [edi + eax + 0x1c]
push dword [edi + eax + 0x18]
lea eax, [esp + 0x94]
push ebx
push str._____2d_____12lld____g_n
push 0x2000
push eax
call fcn.10068b30
lea eax, [esp + 0xa4]
mov byte [esp + 0x20a3], 0
push eax
push 0x10203d04
push esi
call fcn.1006ac00
inc ebx
lea edi, [edi + 0x10]
add esp, 0x2c
cmp ebx, dword [esi + 0x1d1c]
jl 0x1006dfa5
mov ebx, dword [esp + 0x18]
mov ecx, ebx
mov eax, dword [esi + 0x1d34]
and ecx, 0x20
or ecx, 0x540
shr ecx, 5
mov dword [eax], ecx
jmp 0x1006e45f
mov edi, dword [esp + 0x10]
test edi, edi
je 0x1006e463
cmp edi, 0x1fff
jae 0x1006eb1a
mov eax, edi
and eax, 1
add eax, edi
push eax
lea eax, [esp + 0x88]
push eax
push 0x10203d40
push esi
call fcn.100691b0
mov eax, dword [esp + 0x20]
mov byte [esp + eax + 0x94], 0
lea eax, [esp + 0x94]
push eax
push dword [esp + 0x28]
push str.__M_:__s_n
push esi
call fcn.1006ac00
lea eax, [esp + 0xa4]
push eax
push 4
push esi
call fcn.1006bae0
mov edi, dword [esp + 0x3c]
add esp, 0x2c
mov eax, edi
and eax, 1
add edi, eax
mov dword [esp + 0x10], edi
jmp 0x1006e463
mov edi, dword [esp + 0x10]
test edi, edi
je 0x1006e463
cmp edi, 0x1fff
jb 0x1006e126
push edi
push ecx
push str.__M_:__u__too_big__skipping__n
push esi
call fcn.1006ac00
mov ecx, dword [esp + 0x20]
and ecx, 1
add ecx, dword [esp + 0x20]
push ecx
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x1c
jmp 0x1006e45f
cmp edi, 4
jae 0x1006e134
push edi
push ecx
push str.__M_:__d__too_small__skipping__n
jmp 0x1006e101
mov eax, edi
add edi, 0xfffffffc
and eax, 1
add eax, edi
push eax
lea eax, [esp + 0x88]
push eax
lea eax, [esp + 0x80]
push eax
push 0x10204e8c
push esi
call fcn.100691b0
mov eax, dword [esp + 0x24]
add esp, 0x14
xor edi, edi
mov byte [esp + eax + 0x84], 0
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x1006e1a8
nop dword [eax]
nop word [eax + eax]
movsx eax, byte [esp + edi + 0x84]
push eax
call fcn.1006ab20
add esp, 4
test eax, eax
mov eax, dword [esp + 0x10]
je 0x1006e1a0
inc edi
cmp edi, eax
jl 0x1006e180
jmp 0x1006e1a8
mov byte [esp + edi + 0x84], 0
lea ecx, [esp + 0x84]
push ecx
push dword [esp + 0x7c]
push eax
push dword [esp + 0x20]
push str.__M_:__d_n__AppSig_:__M_n__Name___:__s_n
push esi
call fcn.1006ac00
lea eax, [esp + 0x9c]
push eax
push 3
push esi
call fcn.1006bae0
mov edi, dword [esp + 0x34]
add esp, 0x24
mov eax, edi
and eax, 1
add edi, eax
mov dword [esp + 0x10], edi
jmp 0x1006e463
cmp ecx, 0x52455646
ja 0x1006e574
je 0x1006e546
cmp ecx, 0x4e414843
ja 0x1006e4d5
je 0x1006e366
cmp ecx, 0x4d4d4f43
je 0x1006e322
cmp ecx, 0x4d524f46
jne 0x1006e598
test ebx, ebx
jne 0x1006ee05
mov edi, dword [esp + 0x10]
mov eax, 1
mov dword [esp + 0x18], eax
lea eax, [esp + 0x14]
push eax
push 0x10204bd8
push esi
call fcn.100691b0
mov ecx, dword [esp + 0x20]
add esp, 0xc
cmp ecx, 0x43464941
je 0x1006e263
cmp ecx, 0x46464941
jne 0x1006e279
xor eax, eax
cmp ecx, 0x43464941
sete al
lea eax, [eax*4 + 3]
mov dword [esp + 0x18], eax
cmp dword [esi + 0x1d5c], 0
jl 0x1006e2d5
jg 0x1006e28d
cmp dword [esi + 0x1d58], 0
jbe 0x1006e2d5
mov edx, dword [esi + 0x1d54]
lea eax, [edi + 8]
mov ebx, dword [esi + 0x1d50]
test edx, edx
jl 0x1006e2e1
jg 0x1006e2a6
cmp ebx, eax
jbe 0x1006e2e1
mov dword [esi + 0x1d50], eax
mov dword [esi + 0x1d54], 0
push ecx
push edi
push str.FORM_:__u_n__M_n
push esi
call fcn.1006ac00
mov ebx, dword [esp + 0x28]
add esp, 0x10
xor edi, edi
mov dword [esp + 0x10], edi
jmp 0x1006e463
mov ebx, dword [esi + 0x1d50]
mov edx, dword [esi + 0x1d54]
mov eax, ebx
mov dword [esp + 0x1c], 0
sub eax, 8
sbb edx, 0
cmp edi, eax
jne 0x1006e2fb
cmp dword [esp + 0x1c], edx
je 0x1006e2b6
push ecx
lea eax, [ebx - 8]
push eax
push edi
push str.FORM_:__u__should_be__u__n__M_n
push esi
mov dword [esp + 0x24], eax
call fcn.1006ac00
mov ebx, dword [esp + 0x2c]
add esp, 0x14
xor edi, edi
mov dword [esp + 0x10], edi
jmp 0x1006e463
push esi
call fcn.1006c250
sub eax, 8
mov dword [edi], eax
sbb edx, 0
mov dword [edi + 4], edx
mov ecx, dword [esp + 0x14]
mov eax, ecx
and eax, 1
add ecx, eax
mov eax, dword [esp + 0x70]
push eax
push esi
mov dword [esp + 0x1c], ecx
mov dword [eax], ecx
call fcn.1006d2d0
add esp, 0xc
test eax, eax
jne 0x1006ee39
or ebx, 0x10
mov dword [esp + 0x18], ebx
jmp 0x1006e45f
mov eax, dword [esp + 0x10]
push eax
push ecx
cmp eax, 0xc
jae 0x1006e393
push str.__M_:__d__should_be___12__n
push esi
call fcn.1006ac00
push dword [esp + 0x20]
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x1c
jmp 0x1006e45f
push str.__M_:__d_n
push esi
call fcn.1006ac00
mov edi, dword [esp + 0x20]
lea eax, [esp + 0x8c]
push eax
lea eax, [esp + 0x94]
push eax
lea eax, [esp + 0x68]
push eax
push 0x1020551c
push esi
call fcn.100691b0
push dword [esp + 0x74]
mov ebp, eax
call fcn.1009bcc0
mov ebx, eax
add esp, 0x28
test ebx, ebx
je 0x1006e457
push dword [esp + 0x50]
push str.__Tag____:__x_n
push esi
call fcn.1006ac00
push dword [ebx + 8]
push str.__Layout_:__s_n
push esi
call fcn.1006ac00
add esp, 0x18
cmp ebp, edi
jae 0x1006e40f
sub edi, ebp
push edi
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0xc
cmp dword [ebx + 4], 0
je 0x1006e457
movzx eax, word [esp + 0x50]
mov edi, dword [esi + 0x1d1c]
cmp edi, eax
push dword [esi + 0x1d4c]
cmovge edi, eax
shl edi, 2
call fcn.10128533
push edi
call fcn.101288bb
add esp, 8
mov dword [esi + 0x1d4c], eax
test eax, eax
je 0x1006eb62
push edi
push dword [ebx + 4]
push eax
call fcn.1011e240
add esp, 0xc
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
mov ecx, dword [esi + 0x1d54]
xor edx, edx
mov eax, dword [esi + 0x1d50]
cmp edx, ecx
jg 0x1006eb84
jl 0x1006e483
cmp edi, eax
jae 0x1006eb84
cmp dword [esi + 0x1d28], edx
jne 0x1006e494
test bl, 0x20
jne 0x1006ebaf
push esi
call fcn.1006c250
mov edi, dword [esi + 0x1d50]
add esp, 4
mov ecx, dword [esi + 0x1d54]
sub edi, 8
sbb ecx, 0
cmp edx, ecx
jg 0x1006ebaf
jl 0x1006e4c1
cmp eax, edi
jae 0x1006ebaf
cmp dword [esp + 0x54], 0
jne 0x1006ebaf
mov edi, dword [esp + 0x40]
jmp 0x1006d856
cmp ecx, 0x4f4e4e41
jne 0x1006e598
mov edi, dword [esp + 0x10]
test edi, edi
je 0x1006e463
cmp edi, 0x1ffe
jae 0x1006eb1a
mov eax, edi
and eax, 1
add eax, edi
push eax
lea eax, [esp + 0x88]
push eax
push 0x10203d40
push esi
call fcn.100691b0
mov eax, dword [esp + 0x20]
mov byte [esp + eax + 0x94], 0
lea eax, [esp + 0x94]
push eax
push dword [esp + 0x28]
push str.__M_:__s_n
push esi
call fcn.1006ac00
lea eax, [esp + 0xa4]
push eax
push 5
jmp 0x1006e0c9
or ebx, 8
mov dword [esp + 0x18], ebx
push dword [esp + 0x10]
push ecx
push str.__M_:__d_n
push esi
call fcn.1006ac00
push dword [esp + 0x20]
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x1c
jmp 0x1006e45f
cmp ecx, 0x544d4f43
je 0x1006ea0f
cmp ecx, 0x54534e49
je 0x1006e6dd
cmp ecx, 0x63736162
je 0x1006e6b4
mov eax, dword [esp + 0x10]
cmp eax, 0xffff0000
jb 0x1006e5d4
push eax
push esi
mov dword [esp + 0x5c], 1
call fcn.1006c250
add esp, 4
sub eax, 8
sbb edx, 0
push edx
push eax
push dword [esp + 0x20]
push str._Unknown_chunk_marker___X__at_position__D_with_length__u._Exiting_parser._n
push esi
call fcn.1006ac00
add esp, 0x18
jmp 0x1006e45f
shr ecx, 0x18
push ecx
call fcn.1006ab20
add esp, 4
test eax, eax
je 0x1006e64e
mov eax, dword [esp + 0x14]
shr eax, 0x10
movzx eax, al
push eax
call fcn.1006ab20
add esp, 4
test eax, eax
je 0x1006e64e
mov eax, dword [esp + 0x14]
shr eax, 8
movzx eax, al
push eax
call fcn.1006ab20
add esp, 4
test eax, eax
je 0x1006e64e
movzx eax, byte [esp + 0x14]
push eax
call fcn.1006ab20
add esp, 4
test eax, eax
je 0x1006e64e
push dword [esp + 0x10]
push dword [esp + 0x18]
push 0x10205108
push esi
call fcn.1006ac00
push dword [esp + 0x20]
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x1c
jmp 0x1006e45f
push esi
call fcn.1006c250
add esp, 4
and eax, 3
xor edx, edx
or eax, edx
push esi
je 0x1006e68e
call fcn.1006c250
sub eax, 8
sbb edx, 0
push edx
push eax
push str.__Unknown_chunk_marker_at_position__D._Resynching._n
push esi
call fcn.1006ac00
push 0xfffffffffffffffd
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x20
jmp 0x1006e45f
call fcn.1006c250
push edx
push eax
push dword [esp + 0x20]
push str._Unknown_chunk_marker__X_at_position__D._Exiting_parser._n
push esi
call fcn.1006ac00
add esp, 0x18
mov dword [esp + 0x54], 1
jmp 0x1006e45f
push dword [esp + 0x10]
push str._basc_:__u_n
push esi
call fcn.1006ac00
push dword [esp + 0x1c]
push esi
call fcn.1006d060
add esp, 0x14
test eax, eax
jne 0x1006ee39
jmp 0x1006e45f
mov eax, dword [esp + 0x10]
push 0x14
cmp eax, 0x14
je 0x1006e70c
push eax
push ecx
push str.__M_:__d__should_be__d__n
push esi
call fcn.1006ac00
push dword [esp + 0x24]
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0x20
jmp 0x1006e45f
push ecx
push str.__M_:__d_n
push esi
call fcn.1006ac00
add esp, 0x10
cmp dword [esi + 0x1d40], 0
jne 0x1006e737
call fcn.1006ab00
mov dword [esi + 0x1d40], eax
test eax, eax
je 0x1006eb62
push 6
lea eax, [esp + 0x2088]
push eax
push 0x10203d40
push esi
call fcn.100691b0
movzx eax, byte [esp + 0x2099]
push eax
movzx eax, byte [esp + 0x209c]
push eax
movzx eax, byte [esp + 0x209f]
push eax
movzx eax, byte [esp + 0x20a2]
push eax
movzx eax, byte [esp + 0x20a5]
push eax
movzx eax, byte [esp + 0x20a8]
push eax
push str.__Base_Note_:__u_n__Detune____:__u_n__Low__Note_:__u_n__High_Note_:__u_n__Low__Vel._:__u_n__High_Vel._:__u_n
push esi
call fcn.1006ac00
mov ecx, dword [esi + 0x1d40]
movzx eax, byte [esp + 0x20b4]
mov byte [ecx + 4], al
mov ecx, dword [esi + 0x1d40]
movzx eax, byte [esp + 0x20b5]
mov byte [ecx + 5], al
mov ecx, dword [esi + 0x1d40]
movzx eax, byte [esp + 0x20b6]
mov byte [ecx + 8], al
mov ecx, dword [esi + 0x1d40]
movzx eax, byte [esp + 0x20b7]
mov byte [ecx + 9], al
mov ecx, dword [esi + 0x1d40]
movzx eax, byte [esp + 0x20b8]
mov byte [ecx + 6], al
mov ecx, dword [esi + 0x1d40]
movzx eax, byte [esp + 0x20b9]
mov byte [ecx + 7], al
lea eax, [esp + 0x6c]
push eax
push 0x10204dc0
push esi
call fcn.100691b0
mov eax, dword [esi + 0x1d40]
movsx ecx, word [esp + 0x78]
mov dword [eax], ecx
movsx eax, word [esp + 0x78]
push eax
push str.__Gain__dB__:__d_n
push esi
call fcn.1006ac00
add esp, 0x48
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x28]
push eax
push str.E222
push esi
call fcn.100691b0
movsx eax, word [esp + 0x34]
add esp, 0x14
mov ecx, eax
sub ecx, 0
je 0x1006e8d7
sub ecx, 1
je 0x1006e881
sub ecx, 1
je 0x1006e875
mov edx, str._unknown
sub eax, 0
je 0x1006e8dc
sub eax, 1
je 0x1006e886
sub eax, 1
je 0x1006e87a
jmp 0x1006e8dc
mov edx, str.backward
mov eax, 0x322
jmp 0x1006e88b
mov edx, str.forward
mov eax, 0x321
mov ecx, dword [esi + 0x1d40]
movzx eax, ax
mov dword [esp + 0x20], eax
mov dword [ecx + 0xc], 1
mov eax, dword [esi + 0x1d40]
mov dword [eax + 0x10], 0x321
mov eax, dword [esi + 0x1d40]
movzx ecx, word [esp + 0x28]
mov dword [eax + 0x14], ecx
mov eax, dword [esi + 0x1d40]
movzx ecx, word [esp + 0x24]
mov dword [eax + 0x18], ecx
mov eax, dword [esi + 0x1d40]
mov dword [eax + 0x1c], 0
jmp 0x1006e8fe
mov edx, str.none
mov eax, dword [esi + 0x1d40]
mov dword [esp + 0x20], 0x320
mov dword [eax + 0xc], 0
mov eax, dword [esi + 0x1d40]
mov dword [eax + 0x10], 0x320
movzx eax, word [esp + 0x24]
push eax
movzx eax, word [esp + 0x2c]
push eax
movsx eax, word [esp + 0x28]
push edx
push eax
push str.__Sustain_n___mode__:__d____s_n___begin_:__u_n___end___:__u_n
push esi
call fcn.1006ac00
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x40]
push eax
push str.E222
push esi
call fcn.100691b0
movsx eax, word [esp + 0x4c]
add esp, 0x2c
mov ecx, eax
sub ecx, 0
je 0x1006e9c7
sub ecx, 1
je 0x1006e975
sub ecx, 1
je 0x1006e969
mov edx, str._unknown
sub eax, 0
je 0x1006e9cc
sub eax, 1
je 0x1006e97a
sub eax, 1
je 0x1006e96e
jmp 0x1006e9cc
mov edx, str.backward
mov eax, 0x322
jmp 0x1006e97f
mov edx, str.forward
mov eax, 0x321
mov ecx, dword [esi + 0x1d40]
movzx eax, ax
mov dword [esp + 0x20], eax
inc dword [ecx + 0xc]
mov eax, dword [esi + 0x1d40]
mov dword [eax + 0x20], 0x321
mov eax, dword [esi + 0x1d40]
movzx ecx, word [esp + 0x28]
mov dword [eax + 0x24], ecx
mov eax, dword [esi + 0x1d40]
movzx ecx, word [esp + 0x24]
mov dword [eax + 0x28], ecx
mov eax, dword [esi + 0x1d40]
mov dword [eax + 0x2c], 0
jmp 0x1006e9e5
mov edx, str.none
mov ecx, dword [esi + 0x1d40]
mov eax, 0x320
movzx eax, ax
mov dword [esp + 0x20], eax
mov dword [ecx + 0x20], 0x320
movzx eax, word [esp + 0x24]
push eax
movzx eax, word [esp + 0x2c]
push eax
movsx eax, word [esp + 0x28]
push edx
push eax
push str.__Release_n___mode__:__d____s_n___begin_:__u_n___end___:__u_n
push esi
call fcn.1006ac00
add esp, 0x18
inc dword [esp + 0x58]
jmp 0x1006e45f
mov edi, dword [esp + 0x10]
test edi, edi
je 0x1006e463
lea eax, [esp + 0x38]
push eax
push 0x10204dc0
push esi
call fcn.100691b0
sub edi, eax
movzx eax, word [esp + 0x44]
push eax
push dword [esp + 0x20]
push dword [esp + 0x28]
push str.__M_:__d_n__count__:__d_n
push esi
call fcn.1006ac00
xor eax, eax
add esp, 0x20
xor ebx, ebx
cmp ax, word [esp + 0x38]
jae 0x1006eaf4
nop dword [eax + eax]
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x68]
push eax
push str.E422
push esi
call fcn.100691b0
sub edi, eax
movzx eax, word [esp + 0x48]
push eax
movzx eax, word [esp + 0x60]
push eax
push dword [esp + 0x7c]
push str.___time___:_0x_x_n___marker_:__x_n___length_:__d_n
push esi
call fcn.1006ac00
movzx ecx, word [esp + 0x5c]
add esp, 0x28
lea eax, [ecx + 1]
push ecx
cmp eax, 0x2000
ja 0x1006eb6c
lea eax, [esp + 0x88]
push eax
push 0x10203d40
push esi
call fcn.100691b0
sub edi, eax
movzx eax, word [esp + 0x44]
mov byte [esp + eax + 0x94], 0
lea eax, [esp + 0x94]
push eax
push str.___string_:__s_n
push esi
call fcn.1006ac00
movzx eax, word [esp + 0x54]
inc ebx
add esp, 0x1c
cmp ebx, eax
jl 0x1006ea60
test edi, edi
je 0x1006e45b
push edi
push 0x10204c18
push esi
call fcn.100691b0
add esp, 0xc
jmp 0x1006e45b
mov eax, 0x5b
jmp 0x1006ee39
push edi
push ecx
push str.__M_:__d__too_big__n
push esi
call fcn.1006ac00
add esp, 0x10
mov eax, 0x1d
jmp 0x1006ee39
push ecx
push 0x10204c18
push esi
call fcn.100691b0
push str._File_PEAK_chunk_too_big._n
push esi
call fcn.1006ac00
add esp, 0x14
mov eax, 0x43
jmp 0x1006ee39
mov eax, 0x57
jmp 0x1006ee39
mov eax, 0x11
jmp 0x1006ee39
push str._nError_:_string_length___d__too_big._n
push esi
call fcn.1006ac00
add esp, 0xc
mov eax, 0x1d
jmp 0x1006ee39
push ecx
push eax
push edi
push str._Chunk_size__u___file_length__D._Exiting_parser._n
push esi
call fcn.1006ac00
add esp, 0x14
jmp 0x1006ebaf
push esi
call fcn.1006c250
push edx
push eax
push edx
push eax
push str.Have_0_marker_at_position__D__0x_x_._n
push esi
call fcn.1006ac00
add esp, 0x1c
cmp dword [esp + 0x58], 0
je 0x1006eddd
cmp dword [esp + 0x5c], 0
je 0x1006eddd
mov edi, dword [esi + 0x1d40]
xor ebx, ebx
cmp dword [edi + 0xc], ebx
jle 0x1006ec61
xor edx, edx
cmp ebx, 0x10
jge 0x1006ec4e
mov eax, dword [esp + 0x40]
xor ecx, ecx
mov eax, dword [eax + 0x14]
test ebp, ebp
jle 0x1006ebff
movzx edi, word [edi + edx + 0x14]
nop
cmp word [eax + ecx*8], di
je 0x1006eda5
inc ecx
cmp ecx, ebp
jl 0x1006ebf0
mov eax, dword [esi + 0x1d40]
xor ecx, ecx
mov dword [edx + eax + 0x14], 0
mov eax, dword [esp + 0x40]
mov edi, dword [eax + 0x14]
test ebp, ebp
jle 0x1006ec34
mov eax, dword [esi + 0x1d40]
movzx eax, word [edx + eax + 0x18]
cmp word [edi + ecx*8], ax
je 0x1006edc1
inc ecx
cmp ecx, ebp
jl 0x1006ec25
xor ecx, ecx
mov eax, dword [esi + 0x1d40]
mov dword [edx + eax + 0x18], ecx
mov eax, dword [esi + 0x1d40]
mov dword [edx + eax + 0x10], 0x321
mov edi, dword [esi + 0x1d40]
inc ebx
add edx, 0x10
cmp ebx, dword [edi + 0xc]
jl 0x1006ebd8
mov edx, dword [esi + 0x1d38]
mov ebp, dword [edi + 0xc]
add ebp, ebp
mov ecx, dword [edx]
cmp ecx, ebp
jbe 0x1006edca
mov eax, ecx
xor ebx, ebx
sub eax, ebp
je 0x1006ed9a
xor ebp, ebp
mov eax, dword [edi + 0xc]
lea eax, [ebx + eax*2]
imul eax, eax, 0x118
mov eax, dword [eax + edx + 4]
mov dword [edx + ebp + 4], eax
mov eax, dword [esi + 0x1d40]
mov ecx, dword [esi + 0x1d38]
mov eax, dword [eax + 0xc]
lea eax, [ebx + eax*2]
imul eax, eax, 0x118
mov eax, dword [eax + ecx + 8]
mov dword [ecx + ebp + 8], eax
mov eax, dword [esi + 0x1d40]
mov ecx, dword [esi + 0x1d38]
mov eax, dword [eax + 0xc]
lea eax, [ebx + eax*2]
imul eax, eax, 0x118
mov eax, dword [eax + ecx + 0xc]
mov dword [ecx + ebp + 0xc], eax
mov eax, dword [esi + 0x1d40]
mov ecx, dword [esi + 0x1d38]
mov eax, dword [eax + 0xc]
lea eax, [ebx + eax*2]
imul eax, eax, 0x118
mov eax, dword [eax + ecx + 0x10]
mov dword [ecx + ebp + 0x10], eax
mov eax, dword [esi + 0x1d40]
mov ecx, dword [esi + 0x1d38]
mov eax, dword [eax + 0xc]
lea eax, [ebx + eax*2]
imul eax, eax, 0x118
mov eax, dword [eax + ecx + 0x14]
mov dword [ecx + ebp + 0x14], eax
mov eax, dword [esi + 0x1d40]
mov ecx, dword [esi + 0x1d38]
mov eax, dword [eax + 0xc]
lea eax, [ebx + eax*2]
imul eax, eax, 0x118
xor edi, edi
mov eax, dword [eax + ecx + 0x18]
mov dword [ecx + ebp + 0x18], eax
nop word [eax + eax]
mov eax, dword [esi + 0x1d40]
lea ecx, [edi + ebp]
mov edx, dword [esi + 0x1d38]
mov eax, dword [eax + 0xc]
lea eax, [ebx + eax*2]
imul eax, eax, 0x118
add eax, edi
inc edi
mov al, byte [eax + edx + 0x1c]
mov byte [ecx + edx + 0x1c], al
cmp edi, 0x100
jl 0x1006ed40
mov edi, dword [esi + 0x1d40]
inc ebx
mov edx, dword [esi + 0x1d38]
add ebp, 0x118
mov ecx, dword [edi + 0xc]
mov eax, dword [edx]
add ecx, ecx
mov dword [esp + 0x60], eax
sub eax, ecx
cmp ebx, eax
jb 0x1006ec84
mov ecx, dword [esp + 0x60]
mov eax, dword [edi + 0xc]
add eax, eax
sub ecx, eax
mov dword [edx], ecx
jmp 0x1006eddd
mov ecx, dword [eax + ecx*8 + 4]
mov eax, dword [esi + 0x1d40]
mov dword [edx + eax + 0x14], ecx
xor ecx, ecx
mov eax, dword [esp + 0x40]
mov edi, dword [eax + 0x14]
jmp 0x1006ec1a
mov ecx, dword [edi + ecx*8 + 4]
jmp 0x1006ec36
push edx
call fcn.10128533
add esp, 4
mov dword [esi + 0x1d38], 0
mov eax, dword [esi + 0x1d1c]
cmp eax, 1
jge 0x1006edef
mov eax, 0x20
jmp 0x1006ee39
cmp eax, 0x400
jle 0x1006edfd
mov eax, 0x21
jmp 0x1006ee39
mov eax, dword [esp + 0x18]
test al, 1
jne 0x1006ee0c
mov eax, 0x50
jmp 0x1006ee39
test al, 2
jne 0x1006ee17
mov eax, 0x52
jmp 0x1006ee39
test al, 0x10
jne 0x1006ee22
mov eax, 0x53
jmp 0x1006ee39
mov eax, dword [esi + 0x1d68]
or eax, dword [esi + 0x1d6c]
jne 0x1006ee37
mov eax, 0x5a
jmp 0x1006ee39
xor eax, eax
mov ecx, dword [esp + 0x208c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1011bad5
add esp, 0x2080
ret