Function at 0x475830
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4cc
mov eax, dword [0x58f860]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x4c0], ecx
push 0
push 0x560f04
push 4
push 0
push 0
push 1
lea ecx, [ebp - 0x490]
call fcn.0046c160
mov ecx, dword [ebp - 0x4c0]
call fcn.004cdea4
push eax
lea ecx, [ebp - 0x490]
call fcn.0048d1d0
cmp eax, 1
jne 0x475b05
push str.set_soundplan_path
mov ecx, dword [ebp - 0x4c0]
add ecx, 0x20
call fcn.004dd71b
mov dword [ebp - 0x4a0], eax
cmp dword [ebp - 0x4a0], 0
je 0x4758d7
lea eax, [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x4a0]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x4a0]
mov eax, dword [edx + 0x3c]
call eax
push 0xff333333
mov ecx, dword [ebp - 0x4a0]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x4a0]
mov eax, dword [edx + 0x54]
call eax
lea ecx, [ebp - 0x414]
push ecx
mov ecx, 0x5914f8
call fcn.0041cec0
lea ecx, [ebp - 0x49c]
call fcn.0040ee90
lea ecx, [ebp - 0x498]
call fcn.0040ee90
lea edx, [ebp - 0x214]
push edx
lea ecx, [ebp - 0x49c]
call fcn.0041cec0
push 0x5914f8
push str._sound_
push 0x591308
lea eax, [ebp - 0x4a8]
push eax
call fcn.0041ca60
add esp, 0xc
push eax
lea ecx, [ebp - 0x4ac]
push ecx
call fcn.0041ca00
add esp, 0xc
push eax
lea ecx, [ebp - 0x498]
call fcn.0041c8e0
lea ecx, [ebp - 0x4ac]
call fcn.0040f740
lea ecx, [ebp - 0x4a8]
call fcn.0040f740
push 0
lea ecx, [ebp - 0x498]
call fcn.0041cb20
push eax
lea ecx, [ebp - 0x49c]
call fcn.0041cb20
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push ecx
mov ecx, esp
push 0x5914f8
call fcn.0041c880
push ecx
mov ecx, esp
push str.Name
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SoundPack
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push str.set_soundplan_path
mov ecx, dword [ebp - 0x4c0]
add ecx, 0x20
call fcn.004dd71b
mov dword [ebp - 0x4c4], eax
cmp dword [ebp - 0x4c4], 0
je 0x4759e4
mov edx, dword [ebp - 0x4c4]
sub edx, 8
mov dword [ebp - 0x4c8], edx
jmp 0x4759ee
mov dword [ebp - 0x4c8], 0
mov eax, dword [ebp - 0x4c8]
mov dword [ebp - 0x494], eax
cmp dword [ebp - 0x494], 0
je 0x475aef
push 0x280
call fcn.00512067
add esp, 4
mov dword [ebp - 0x4bc], eax
cmp dword [ebp - 0x4bc], 0
je 0x475a36
mov ecx, dword [ebp - 0x4bc]
call fcn.00486c50
mov dword [ebp - 0x4cc], eax
jmp 0x475a40
mov dword [ebp - 0x4cc], 0
mov ecx, dword [ebp - 0x4cc]
mov dword [ebp - 0x4a4], ecx
push 0x19
mov edx, dword [ebp - 0x4a4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x4a4]
mov edx, dword [eax + 0xf8]
call edx
lea eax, [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x4a4]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x4a4]
mov eax, dword [edx + 0x3c]
call eax
mov ecx, 0x5914f8
call fcn.0041cb20
push eax
mov ecx, dword [ebp - 0x4a4]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x4a4]
mov eax, dword [edx + 0x170]
call eax
mov ecx, dword [ebp - 0x4a4]
push ecx
mov edx, dword [ebp - 0x494]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x494]
mov edx, dword [eax + 0x10]
call edx
push 0
mov eax, dword [ebp - 0x494]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x494]
mov eax, dword [edx + 0xc]
call eax
sub eax, 1
push eax
mov ecx, dword [ebp - 0x494]
add ecx, 0x368
mov edx, dword [ebp - 0x494]
mov eax, dword [edx + 0x368]
mov edx, dword [eax + 8]
call edx
lea ecx, [ebp - 0x498]
call fcn.0040f740
lea ecx, [ebp - 0x49c]
call fcn.0040f740
lea ecx, [ebp - 0x490]
call fcn.0046c3e0
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00512610
mov esp, ebp
pop ebp
ret 0xc