Function at 0x1000cdd0
Capabilities:
Create directory
Delete file
Hide graphical window
Move file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x584
mov eax, dword [0x1004806c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x1004c8d8
call fcn.100223ef
push 0x1004c8d8
push str.Entering__s
call fcn.10002f50
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
add esp, 0xc
push 0
push dword [0x1004bfc4]
call edi
push 0
push dword [0x1004bfc8]
call edi
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push 2
push dword [0x1004bfc0]
call esi
push eax
call edi
push 5
push 0x3e9
push dword [0x1004bfc0]
call esi
push eax
call edi
movq xmm0, qword [str.streams]
lea ecx, [ebp - 0x10]
mov ax, word [0x1003586c]
lea edx, [ecx + 1]
movq qword [ebp - 0x10], xmm0
mov word [ebp - 8], ax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000ce60
sub ecx, edx
inc ecx
cmp ecx, 0xa
jae 0x1000d1cb
mov byte [ebp + ecx - 0x10], al
lea ecx, [ebp - 0x10]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000ce80
sub ecx, edx
add ecx, 2
cmp ecx, 0xa
jae 0x1000d1cb
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov byte [ebp + ecx - 0x10], al
call edi
mov ebx, dword [sym.imp.SHELL32.dll_SHFileOperationA]
mov dword [ebp - 0x584], eax
mov eax, 0x414
mov word [ebp - 0x574], ax
lea eax, [ebp - 0x10]
mov dword [ebp - 0x57c], eax
lea eax, [ebp - 0x584]
push eax
mov dword [ebp - 0x580], 3
mov dword [ebp - 0x578], 0
call ebx
push eax
push str.Deleting_temp_streams_folder__d
call fcn.10002f50
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
add esp, 8
push str.pcm.wad
call esi
push eax
push str.Deleting_pcm.wad__d
call fcn.10002f50
add esp, 8
push str.pcm.dat
call esi
push eax
push str.Deleting_pcm.dat__d
call fcn.10002f50
push str.Copying_streams_back_into_place
call fcn.10002f50
push 0x104
lea eax, [ebp - 0x524]
push 1
push eax
call fcn.10015640
push str.data_streamspcm
push 0x1004c8d8
lea eax, [ebp - 0x524]
push 0x1003530c
push eax
call fcn.10011080
lea eax, [ebp - 0x524]
push eax
push str.Creating__s
call fcn.10002f50
add esp, 0x30
lea eax, [ebp - 0x524]
push 0
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectoryExA]
push 0x104
lea eax, [ebp - 0x114]
push 1
push eax
call fcn.10015640
push 0x104
lea eax, [ebp - 0x218]
push 1
push eax
call fcn.10015640
push str.pcm2.wad
push 0x1004c8d8
lea eax, [ebp - 0x114]
push 0x1003530c
push eax
call fcn.10011080
push str.data_streamspcmpcm.wad
push 0x1004c8d8
lea eax, [ebp - 0x218]
push 0x1003530c
push eax
call fcn.10011080
lea ecx, [ebp - 0x114]
add esp, 0x38
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000cfe0
sub ecx, edx
inc ecx
cmp ecx, 0x104
jae 0x1000d1cb
mov byte [ebp + ecx - 0x114], al
lea ecx, [ebp - 0x218]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000d006
sub ecx, edx
inc ecx
cmp ecx, 0x104
jae 0x1000d1cb
mov byte [ebp + ecx - 0x218], al
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x114]
push eax
push str._s_____s
call fcn.10002f50
add esp, 0xc
call edi
mov dword [ebp - 0x544], eax
mov esi, 0x614
lea eax, [ebp - 0x114]
mov dword [ebp - 0x532], 0
mov dword [ebp - 0x53c], eax
lea eax, [ebp - 0x218]
mov dword [ebp - 0x538], eax
lea eax, [ebp - 0x544]
push eax
mov word [ebp - 0x534], si
mov dword [ebp - 0x540], 1
call ebx
push eax
push str.Copying_wad_into_place__d
call fcn.10002f50
push 0x104
lea eax, [ebp - 0x31c]
push 1
push eax
call fcn.10015640
push 0x104
lea eax, [ebp - 0x420]
push 1
push eax
call fcn.10015640
push str.pcm2.dat
push 0x1004c8d8
lea eax, [ebp - 0x31c]
push 0x1003530c
push eax
call fcn.10011080
push str.data_streamspcmpcm.dat
push 0x1004c8d8
lea eax, [ebp - 0x420]
push 0x1003530c
push eax
call fcn.10011080
lea ecx, [ebp - 0x31c]
add esp, 0x40
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000d100
sub ecx, edx
inc ecx
cmp ecx, 0x104
jae 0x1000d1cb
mov byte [ebp + ecx - 0x31c], al
lea ecx, [ebp - 0x420]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000d126
sub ecx, edx
inc ecx
cmp ecx, 0x104
jae 0x1000d1cb
mov byte [ebp + ecx - 0x420], al
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x31c]
push eax
push str._s_____s
call fcn.10002f50
add esp, 0xc
call edi
mov dword [ebp - 0x564], eax
lea eax, [ebp - 0x31c]
mov dword [ebp - 0x55c], eax
lea eax, [ebp - 0x420]
mov dword [ebp - 0x558], eax
lea eax, [ebp - 0x564]
push eax
mov dword [ebp - 0x552], 0
mov word [ebp - 0x554], si
mov dword [ebp - 0x560], 1
call ebx
push eax
push str.Copying_dat_into_place__d
call fcn.10002f50
push str.Deleting_tmp_streams_wad_dat
call fcn.10002f50
mov ecx, dword [ebp - 4]
add esp, 0xc
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.1001327e
mov esp, ebp
pop ebp
ret
call fcn.100133e5
int3