Function at 0x47bc5d
Capabilities:
Read file on windows

Disassembly:
push 0x434
push 0x535358
call fcn.004cfe5c
mov esi, ecx
mov dword [ebp - 0x444], esi
mov eax, dword [ebp + 8]
mov dword [ebp - 0x440], eax
xor edi, edi
mov dword [ebp - 0x438], edi
mov byte [ebp - 0x434], 0
mov ebx, 0x103
push ebx
push edi
lea eax, [ebp - 0x433]
push eax
call fcn.004b7880
add esp, 0xc
mov byte [ebp - 0x12c], 0
push ebx
push edi
lea eax, [ebp - 0x12b]
push eax
call fcn.004b7880
add esp, 0xc
mov edi, 0x1e8
call fcn.0047d5cf
test eax, eax
je 0x47c433
mov edx, dword [ebp - 0x440]
call fcn.0047ebaf
test eax, eax
lea eax, [ebp - 0x12c]
jne 0x47bcf2
push dword [ebp - 0x440]
lea ecx, [ebx + 1]
call fcn.0047ebe1
pop ecx
jmp 0x47bcf7
call fcn.0047eb32
and dword [ebp - 0x440], 0
lea edx, [ebp - 0x12c]
call fcn.0047ebaf
test eax, eax
jne 0x47be09
lea edi, [ebp - 0x12c]
call fcn.0041c5ff
test eax, eax
jne 0x47bd7e
mov edi, 0x6422c8
mov edx, edi
call fcn.0047ebaf
test eax, eax
jne 0x47bde4
push edi
call fcn.004b68f0
pop ecx
mov ecx, ebx
sub ecx, eax
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x434]
call fcn.0047ebe1
pop ecx
mov edx, edi
mov ecx, eax
call fcn.0047f16b
lea edi, [ebp - 0x434]
call fcn.0041c5ff
test eax, eax
je 0x47bdb7
mov eax, edi
push eax
mov ecx, 0x104
lea eax, [ebp - 0x12c]
call fcn.0047ebe1
pop ecx
push 0
xor edx, edx
lea ecx, [ebp - 0x12c]
call fcn.0041cc74
pop ecx
mov dword [ebp - 0x440], eax
test eax, eax
jne 0x47be09
cmp dword [0x6423d0], eax
jne 0x47c433
lea eax, [ebp - 0x12c]
push eax
push str.:5:LoadSound___s___FAILED:_GetFileSizeTimeOut___FAILED.
call fcn.00418e96
jmp 0x47be02
cmp dword [0x6423cc], 0
jne 0x47c433
lea eax, [ebp - 0x434]
push eax
lea eax, [ebp - 0x12c]
push eax
push str.:2:LoadSound___s___FAILED:_The_file_could_not_be_found__Tried_default_directory___s_
call fcn.0041936e
add esp, 0xc
jmp 0x47c433
cmp dword [0x6423cc], 0
jne 0x47c433
lea eax, [ebp - 0x12c]
push eax
push str.:2:LoadSound___s___FAILED:_The_file_could_not_be_found__No_default_directory_has_been_defined.
call fcn.0041936e
pop ecx
pop ecx
jmp 0x47c433
xor ebx, ebx
cmp dword [ebp - 0x440], ebx
jne 0x47be53
mov edi, 0x21a
call fcn.0047d5cf
test eax, eax
je 0x47be4b
mov eax, esi
call fcn.0047d631
test eax, eax
je 0x47be4b
push str.LoadSound1
mov ecx, esi
call fcn.0047b785
pop ecx
mov dword [esi + 0x104], ebx
mov eax, esi
call fcn.0047eb32
call fcn.0047d649
xor eax, eax
inc eax
jmp 0x47c435
push 0x228
push str..Sound.c
mov edx, 0x4d520c
lea ecx, [ebp - 0x12c]
call fcn.0041e477
pop ecx
pop ecx
mov edi, eax
cmp edi, ebx
jne 0x47be9d
cmp dword [0x6423d0], ebx
jne 0x47c433
push dword [ebp - 0x440]
lea eax, [ebp - 0x12c]
push eax
push str.:5:LoadSound___s___FAILED:_The_file_of_size__ld_exists_but_cannot_be_opened__
call fcn.00418e96
jmp 0x47bddc
mov dword [ebp - 0x43c], ebx
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x52
jne 0x47bee7
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x49
jne 0x47bee7
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x46
jne 0x47bee7
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x46
je 0x47bef1
mov dword [ebp - 0x43c], 1
xor ebx, ebx
inc ebx
push edi
call fcn.004b7009
pop ecx
push edi
call fcn.004b7009
pop ecx
push edi
call fcn.004b7009
pop ecx
push edi
call fcn.004b7009
pop ecx
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x57
jne 0x47bf54
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x41
jne 0x47bf54
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x56
jne 0x47bf54
push edi
call fcn.004b7009
pop ecx
call fcn.0047ea32
cmp eax, 0x45
je 0x47bf5a
mov dword [ebp - 0x43c], ebx
cmp dword [ebp - 0x43c], 0
je 0x47bf88
cmp dword [0x6423d0], 0
jne 0x47c42c
lea eax, [ebp - 0x12c]
push eax
push str.LoadSound___s___FAILED:_The_wave_file_is_invalid:_The_RIFF_Chunk_was_not_found.
call fcn.00418e96
pop ecx
pop ecx
jmp 0x47c42c
push edi
mov eax, str.fmt
call fcn.0041df63
pop ecx
test eax, eax
jne 0x47bfb2
cmp dword [0x6423d0], eax
jne 0x47c42c
lea eax, [ebp - 0x12c]
push eax
push str.LoadSound___s___FAILED:_The_wave_file_is_invalid:_The_Format_Chunk_was_not_found.
jmp 0x47bf7c
and dword [ebp - 0x438], 0
push edi
push ebx
push 4
lea eax, [ebp - 0x438]
push eax
call fcn.004b7b96
add esp, 0x10
cmp eax, ebx
jne 0x47c409
cmp dword [ebp - 0x438], 0x10
jb 0x47c409
push dword [ebp - 0x438]
push ebx
call fcn.004b66ca
pop ecx
pop ecx
mov dword [ebp - 0x43c], eax
test eax, eax
jne 0x47c021
cmp dword [0x6423d0], eax
jne 0x47c42c
push dword [ebp - 0x438]
lea eax, [ebp - 0x12c]
push eax
push str.:6:LoadSound___s___FAILED:_Could_not_allocate__ld_bytes_for_the_wave_format_header_struct.
call fcn.00418e96
jmp 0x47c429
push edi
push dword [ebp - 0x438]
push ebx
push dword [ebp - 0x43c]
call fcn.004b7b96
add esp, 0x10
cmp eax, dword [ebp - 0x438]
je 0x47c07a
cmp dword [0x6423d0], 0
jne 0x47c063
push eax
push dword [ebp - 0x438]
lea eax, [ebp - 0x12c]
push eax
push str.:7:LoadSound___s___FAILED:_Could_not_read_the_Format_Chunk_of_size__ld_from_the_file.__Only__ld_bytes_could_be_read.
call fcn.00418e96
add esp, 0x10
mov ecx, edi
call fcn.0041e8bf
push dword [ebp - 0x43c]
call fcn.004b651e
jmp 0x47be03
push edi
mov eax, str.data
call fcn.0041df63
pop ecx
test eax, eax
jne 0x47c0a7
cmp dword [0x6423d0], eax
jne 0x47c063
lea eax, [ebp - 0x12c]
push eax
push str.LoadSound___s___FAILED:_The_wave_file_is_invalid:_The_Format_Chunk_was_not_found.
call fcn.00418e96
pop ecx
pop ecx
jmp 0x47c063
and dword [ebp - 0x438], 0
push edi
push ebx
push 4
lea eax, [ebp - 0x438]
push eax
call fcn.004b7b96
add esp, 0x10
cmp eax, ebx
jne 0x47c3e0
cmp dword [ebp - 0x438], 0
je 0x47c3e0
push dword [ebp - 0x438]
call fcn.004b7e07
pop ecx
mov ebx, eax
test ebx, ebx
jne 0x47c113
cmp dword [0x6423d0], eax
jne 0x47c063
push dword [ebp - 0x438]
lea eax, [ebp - 0x12c]
push eax
push str.:7:LoadSound___s___FAILED:_The_file_is_too_large_for_memory:_Could_not_allocate__ld_bytes_for_wave_data.
call fcn.00418e96
add esp, 0xc
jmp 0x47c063
push edi
push dword [ebp - 0x438]
push 1
push ebx
call fcn.004b7b96
add esp, 0x10
cmp eax, dword [ebp - 0x438]
je 0x47c168
cmp dword [0x6423d0], 0
jne 0x47c151
push eax
push dword [ebp - 0x438]
lea eax, [ebp - 0x12c]
push eax
push str.:7:LoadSound___s___FAILED:_Wave_data_size_should_be__ld_but_only__ld_bytes_could_be_read.
call fcn.00418e96
add esp, 0x10
push ebx
call fcn.004b651e
pop ecx
push dword [ebp - 0x43c]
call fcn.004b651e
jmp 0x47bf82
mov ecx, edi
call fcn.0041e8bf
mov edi, 0x2a2
call fcn.0047d5cf
test eax, eax
je 0x47c3d4
mov eax, esi
call fcn.0047d631
test eax, eax
je 0x47c3d4
push str.LoadSound
mov ecx, esi
call fcn.0047b785
pop ecx
and dword [ebp - 4], 0
mov dword [esi + 0x108], ebx
mov eax, dword [ebp - 0x438]
mov dword [esi + 0x10c], eax
mov eax, dword [ebp - 0x43c]
mov dword [esi + 0x110], eax
lea eax, [ebp - 0x12c]
push eax
mov ecx, 0x104
mov eax, esi
call fcn.0047ebe1
pop ecx
mov eax, dword [ebp - 0x440]
mov dword [esi + 0x104], eax
lea ebx, [esi + 0x114]
push 0x20
push 0
push ebx
call fcn.004b7880
add esp, 0xc
mov eax, dword [ebp - 0x438]
mov dword [esi + 0x118], eax
mov eax, dword [esi + 0x108]
mov dword [ebx], eax
and dword [esi + 0x120], 0
lea edi, [esi + 0x434]
and dword [edi], 0
push 0x30000
push esi
push 0x47d509
push dword [esi + 0x110]
push 0xffffffffffffffff
push edi
call dword [sym.imp.WINMM.dll_waveOutOpen]
mov dword [ebp - 0x440], eax
test eax, eax
je 0x47c2fd
mov byte [ebp - 0x32c], 0
push 0xff
push 0
lea eax, [ebp - 0x32b]
push eax
call fcn.004b7880
add esp, 0xc
mov ebx, dword [ebp - 0x440]
push ebx
push str.Err_ld
push 0xf6
lea eax, [ebp - 0x32c]
push eax
call fcn.00480225
lea eax, [ebp - 0x32c]
push eax
call fcn.004b68f0
add esp, 0x14
mov ecx, 0x100
sub ecx, eax
push ecx
lea eax, [ebp - 0x32c]
push eax
call fcn.004b68f0
pop ecx
lea eax, [ebp + eax - 0x32c]
push eax
push ebx
call dword [sym.imp.WINMM.dll_waveOutGetErrorTextA]
cmp dword [0x6423e4], ebx
je 0x47c2c2
and dword [0x6424ec], 0
mov dword [0x6423e4], ebx
jmp 0x47c2c8
inc dword [0x6424ec]
cmp dword [0x6423cc], 0
jne 0x47c2f5
cmp dword [0x6424ec], 2
jg 0x47c2f5
lea eax, [ebp - 0x32c]
push eax
lea eax, [ebp - 0x12c]
push eax
push str.:4:LoadSound___s___encountered_a_problem:_The_initial_sound_instance_could_not_be_queued_because_waveOutOpen___FAILED:__s
call fcn.0041936e
add esp, 0xc
and dword [edi], 0
jmp 0x47c39d
push 0x20
push ebx
push dword [edi]
call dword [sym.imp.WINMM.dll_waveOutPrepareHeader]
mov edi, eax
test edi, edi
je 0x47c39d
mov byte [ebp - 0x22c], 0
push 0xff
push 0
lea eax, [ebp - 0x22b]
push eax
call fcn.004b7880
add esp, 0xc
push edi
push str.Err_ld
push 0xf6
lea eax, [ebp - 0x22c]
push eax
call fcn.00480225
lea eax, [ebp - 0x22c]
push eax
call fcn.004b68f0
add esp, 0x14
mov ecx, 0x100
sub ecx, eax
push ecx
lea eax, [ebp - 0x22c]
push eax
call fcn.004b68f0
pop ecx
lea eax, [ebp + eax - 0x22c]
push eax
push edi
call dword [sym.imp.WINMM.dll_waveOutGetErrorTextA]
cmp dword [0x6423cc], 0
jne 0x47c39d
lea eax, [ebp - 0x22c]
push eax
lea eax, [ebp - 0x12c]
push eax
push str.:4:LoadSound___s___encountered_a_problem:_The_initial_sound_instance_could_not_be_queued_because_waveOutPrepareHeader___FAILED:__s
call fcn.0041936e
add esp, 0xc
mov dword [ebp - 4], 0xfffffffe
jmp 0x47c3cd
mov eax, esi
jmp 0x47be46
push ebx
call fcn.004b651e
pop ecx
jmp 0x47c06a
cmp dword [0x6423cc], 0
jne 0x47c063
push dword [ebp - 0x438]
lea eax, [ebp - 0x12c]
push eax
push str.:6:LoadSound___s___FAILED:_The_file_format_is_invalid._The_Data_Chunk_size___ld__could_not_be_read.
call fcn.0041936e
jmp 0x47c10b
cmp dword [0x6423cc], 0
jne 0x47c42c
push dword [ebp - 0x438]
lea eax, [ebp - 0x12c]
push eax
push str.:6:LoadSound___s___FAILED:_The_file_format_is_invalid._The_Format_Chunk_size___ld__could_not_be_read.
call fcn.0041936e
add esp, 0xc
mov ecx, edi
call fcn.0041e8bf
xor eax, eax
call fcn.004cfea4
ret