Function at 0x4015ef
Capabilities:
Contain obfuscated stackstrings
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x9d0
mov eax, dword [0x40c040]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x10]
xor ecx, ecx
cmp edi, ecx
push 0x10
mov dword [ebp - 4], eax
pop eax
mov dword [ebp - 0x9d0], ecx
mov dword [ebp - 0x30], 0x46464952
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], 0x45564157
mov dword [ebp - 0x24], 0x20746d66
mov dword [ebp - 0x20], eax
mov word [ebp - 0x1c], 1
mov word [ebp - 0x1a], 2
mov dword [ebp - 0x18], 0xac44
mov dword [ebp - 0x14], 0x2b110
mov word [ebp - 0x10], 4
mov word [ebp - 0xe], ax
mov dword [ebp - 0xc], 0x61746164
mov dword [ebp - 8], ecx
je 0x401666
mov eax, edi
sub eax, dword [ebp + 0xc]
push eax
jmp 0x40166b
push 0x96
push str._nNote:_PreGap___d_frames_n
call fcn.004029e5
mov eax, dword [ebp + 0x14]
pop ecx
pop ecx
dec eax
cmp byte [0x80cae0], 0
push eax
mov esi, 0x80cae0
push edi
je 0x40169b
push esi
push str.Creating__s___06d__06d_
call fcn.004029e5
add esp, 0x10
jmp 0x4016a8
push str.Converting___06d__06d_
call fcn.004029e5
add esp, 0xc
movsx ebx, word [ebp + 8]
test ebx, ebx
je 0x4016ea
cmp ebx, 0xa
je 0x4016e3
cmp ebx, 0x14
je 0x4016d3
cmp ebx, 0x1e
je 0x4016e3
cmp ebx, 0x28
je 0x4016dc
push str.Unidentified_track_mode_encountered_
call fcn.004029e5
jmp 0x401a70
cmp dword [0x40c790], 1
je 0x4016e3
push str.Mode2_2352
jmp 0x4016ef
push str.Mode1_2048
jmp 0x4016ef
push str.Audio
call fcn.004029e5
pop ecx
push str._:
call fcn.004029e5
cmp byte [0x80cae0], 0
pop ecx
je 0x40172c
push 0x409284
push esi
call fcn.004034ca
test eax, eax
pop ecx
pop ecx
mov dword [0xc0cc00], eax
jne 0x401750
push str.bin2iso_fopen_
call fcn.00402df7
pop ecx
jmp 0x401736
mov eax, dword [0x80c9c0]
mov dword [0xc0cc00], eax
cmp dword [0xc0cc00], 0
jne 0x401750
push esi
push str.____Unable_to_create__s_n
call fcn.004029e5
pop ecx
jmp 0x401a70
push 0
push dword [ebp + 0x18]
push dword [0x80c9c0]
call fcn.00402e63
add esp, 0xc
test eax, eax
jne 0x401a66
xor esi, esi
cmp word [ebp + 8], si
jne 0x4017a5
push dword [0xc0cc00]
lea eax, [ebp - 0x30]
push 1
push 0x2c
push eax
call fcn.00402cf0
add esp, 0x10
cmp eax, 1
je 0x4017a5
push str._nbin2iso_fwrite_
call fcn.00402df7
push dword [0xc0cc00]
call fcn.00402c9a
jmp 0x40174a
push 0x994
lea eax, [ebp - 0x9c4]
push esi
push eax
call fcn.00403440
add esp, 0xc
cmp word [ebp + 8], 0x28
jne 0x4018f5
push 2
pop ebx
lea eax, [ebp - 0x9b4]
push 0x920
push eax
mov dword [ebp - 0x9cc], esi
mov dword [ebp - 0x9c8], esi
call fcn.004010be
test eax, eax
pop ecx
pop ecx
je 0x401a2d
mov edi, 0x930
push 0xa
lea eax, [ebp - 0x9c3]
push 0xff
push eax
call fcn.00403440
mov al, byte [ebp - 0x9cc]
mov byte [ebp - 0x9b8], al
mov al, byte [ebp - 0x9c8]
add esp, 0xc
inc dword [ebp - 0x9c8]
mov byte [ebp - 0x9b6], al
mov eax, dword [ebp - 0x9c8]
and eax, 0xf
cmp al, 0xa
mov byte [ebp - 0x9b7], bl
mov byte [ebp - 0x9b5], 2
jne 0x401849
add dword [ebp - 0x9c8], 6
cmp dword [ebp - 0x9c8], 0x75
jne 0x40185a
inc ebx
and dword [ebp - 0x9c8], 0
mov eax, ebx
and eax, 0xf
cmp al, 0xa
jne 0x401866
add ebx, 6
cmp ebx, 0x60
jne 0x401873
inc dword [ebp - 0x9cc]
xor ebx, ebx
mov eax, dword [ebp - 0x9cc]
and eax, 0xf
cmp al, 0xa
jne 0x401887
add dword [ebp - 0x9cc], 6
lea eax, [ebp - 0x9c4]
push edi
push eax
call fcn.0040116c
push 0x994
lea eax, [ebp - 0x9c4]
push 0
push eax
call fcn.00403440
mov esi, dword [ebp + 0x10]
mov eax, esi
cdq
mov ecx, 0x400
idiv ecx
add esp, 0x14
test edx, edx
jne 0x4018c8
push esi
push str._b_b_b_b_b_b_06d
call fcn.004029e5
pop ecx
pop ecx
inc esi
cmp esi, dword [ebp + 0x14]
mov dword [ebp + 0x10], esi
je 0x401a22
lea eax, [ebp - 0x9b4]
push 0x920
push eax
call fcn.004010be
test eax, eax
pop ecx
pop ecx
jne 0x4017f4
jmp 0x401a2d
cmp word [ebp + 8], 0x1e
lea eax, [ebp - 0x9c4]
jne 0x401955
mov esi, 0x800
jmp 0x401943
lea eax, [ebp - 0x9c4]
push esi
push eax
call fcn.0040116c
pop ecx
mov eax, edi
pop ecx
cdq
mov ecx, 0x400
idiv ecx
test edx, edx
jne 0x401933
push edi
push str._b_b_b_b_b_b_06d
call fcn.004029e5
pop ecx
pop ecx
inc edi
cmp edi, dword [ebp + 0x14]
je 0x401a22
lea eax, [ebp - 0x9c4]
push esi
push eax
call fcn.004010be
test eax, eax
pop ecx
pop ecx
jne 0x401909
jmp 0x401a2d
mov edi, 0x930
push edi
push eax
call fcn.004010be
test eax, eax
pop ecx
pop ecx
je 0x401a2d
mov esi, 0x800
test ebx, ebx
je 0x4019ab
cmp ebx, 0xa
je 0x40199c
cmp ebx, 0x14
jne 0x401a18
cmp dword [0x40c790], 0
je 0x401993
lea eax, [ebp - 0x9ac]
jmp 0x4019a2
push edi
lea eax, [ebp - 0x9c4]
jmp 0x4019a3
lea eax, [ebp - 0x9b4]
push esi
push eax
call fcn.0040116c
jmp 0x4019be
lea eax, [ebp - 0x9c4]
push edi
push eax
call fcn.0040116c
inc dword [ebp - 0x9d0]
pop ecx
pop ecx
push 0x994
lea eax, [ebp - 0x9c4]
push 0
push eax
call fcn.00403440
mov eax, dword [ebp + 0x10]
cdq
mov ecx, 0x400
idiv ecx
add esp, 0xc
test edx, edx
jne 0x4019f4
push dword [ebp + 0x10]
push str._b_b_b_b_b_b_06d
call fcn.004029e5
pop ecx
pop ecx
inc dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
cmp eax, dword [ebp + 0x14]
je 0x401a22
lea eax, [ebp - 0x9c4]
push edi
push eax
call fcn.004010be
test eax, eax
pop ecx
pop ecx
jne 0x401970
jmp 0x401a2d
push str.Unkown_Mode_n
jmp 0x4016c9
push str._b_b_b_b_b_bComplete_n
call fcn.004029e5
pop ecx
call fcn.00401285
pop edi
xor ecx, ecx
cmp word [ebp + 8], cx
pop esi
pop ebx
jne 0x401a8e
mov eax, dword [ebp - 0x9d0]
imul eax, eax, 0x930
push ecx
push ecx
push dword [0xc0cc00]
mov dword [ebp - 8], eax
add eax, 0x24
mov dword [ebp - 0x2c], eax
call fcn.00402e63
add esp, 0xc
test eax, eax
je 0x401a78
push str._nbin2iso_fseek_
call fcn.00402df7
pop ecx
push 1
call fcn.00402c5a
push dword [0xc0cc00]
lea eax, [ebp - 0x30]
push 1
push 0x2c
push eax
call fcn.00402cf0
add esp, 0x10
push dword [0xc0cc00]
call fcn.00402c9a
pop ecx
mov ecx, dword [ebp - 4]
call fcn.0040350e
leave
ret