Function at 0x479f1c
Capabilities:
Create directory
Delete file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00405848
mov esi, dword [0x6339f0]
xor eax, eax
push ebp
push 0x47a417
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00463944
mov eax, dword [0x634008]
movzx eax, byte [eax]
xor al, 1
mov edx, dword [esi]
mov byte [edx + 4], al
mov al, 1
call fcn.0047962c
mov eax, 0x47a430
call fcn.00479428
xor ebx, ebx
call fcn.00403424
push 0
push 0x80
push 3
push 0
push 1
push 0x80000000
push 0x47a43c
call sub.kernel32.dll_CreateFileA_1
mov eax, dword [0x634008]
cmp byte [eax], 0
je 0x479fb8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x10]
call fcn.00405858
mov edi, eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xc], eax
jmp 0x479fc4
mov edi, 0x47a450
mov dword [ebp - 0xc], 0xb
mov eax, 0x47a464
call fcn.00463f18
mov eax, 0x47a464
call fcn.00463f18
mov eax, 0x47a464
call fcn.00463f18
mov eax, 0x47a464
call fcn.00463f18
push 0x20
lea eax, [ebp - 0x10]
call fcn.004235fc
lea eax, [ebp - 0x10]
mov edx, 0x47a47c
call fcn.00405694
mov eax, dword [ebp - 0x10]
call fcn.00405858
push eax
call sub.kernel32.dll_SetFileAttributesA
lea eax, [ebp - 0x14]
call fcn.004235fc
lea eax, [ebp - 0x14]
mov edx, 0x47a47c
call fcn.00405694
mov eax, dword [ebp - 0x14]
call fcn.00405858
push eax
call sub.kernel32.dll_DeleteFileA
push 0
lea eax, [ebp - 0x18]
call fcn.004235fc
lea eax, [ebp - 0x18]
mov edx, 0x47a47c
call fcn.00405694
mov eax, dword [ebp - 0x18]
call fcn.00405858
push eax
call sub.kernel32.dll_CreateDirectoryA
mov eax, 0x7d0
call fcn.0040344c
add ax, 0x3e9
push eax
mov eax, dword [0x633eec]
mov eax, dword [eax]
push eax
mov eax, 0x7d0
call fcn.0040344c
mov ecx, eax
add cx, 0x7d0
movzx edx, word [ebp - 0xc]
mov eax, edi
call fcn.004770e8
test eax, eax
jne 0x47a3e4
call fcn.00479e94
mov eax, dword [0x633df4]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x34], al
mov eax, dword [0x633f54]
mov eax, dword [eax]
mov edx, dword [esi]
mov dword [edx + 0x30], eax
mov eax, dword [0x633bb8]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x24], al
mov eax, dword [0x633c10]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x25], al
mov eax, dword [0x633f00]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x26], al
mov eax, dword [0x633cf8]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x27], al
mov eax, dword [0x633d4c]
mov eax, dword [eax]
mov edx, dword [esi]
mov dword [edx + 0x28], eax
mov eax, dword [0x633a8c]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x2c], al
mov eax, dword [0x633a34]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x2d], al
mov eax, dword [0x63411c]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x35], al
call fcn.00476d88
movzx eax, ax
mov edx, dword [esi]
mov dword [edx + 0x10], eax
call fcn.00476d80
movzx eax, ax
mov edx, dword [esi]
mov dword [edx + 0x14], eax
mov eax, dword [0x633998]
movzx eax, byte [eax + 0x64]
mov edx, dword [esi]
mov byte [edx + 0x18], al
call sub.kernel32.dll_GetCurrentProcessId
mov edx, dword [esi]
mov dword [edx], eax
mov eax, dword [0x634004]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x19], al
mov eax, dword [0x633f5c]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x1a], al
mov eax, dword [0x633d94]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x1b], al
mov eax, dword [0x633c7c]
movzx eax, byte [eax]
mov edx, dword [esi]
mov byte [edx + 0x36], al
mov eax, dword [esi]
mov byte [eax + 0x1c], 0
mov eax, dword [0x633988]
mov eax, dword [eax]
call fcn.00422664
mov edx, dword [esi]
mov dword [edx + 0x20], eax
push 0x13880
mov ecx, 0x4d26ac
mov eax, 0x47a48c
xor edx, edx
call fcn.00464a50
push 0x13880
mov ecx, 0x4e5f2c
mov eax, 0x47a494
xor edx, edx
call fcn.00464a50
push 0x47a4a0
call sub.kernel32.dll_DeleteFileW
push 0x47a4d0
call sub.kernel32.dll_DeleteFileW
push 0x20
push 0x47a500
call sub.kernel32.dll_SetFileAttributesW
push 0x47a500
call sub.kernel32.dll_DeleteFileW
push 0x20
push 0x47a560
call sub.kernel32.dll_SetFileAttributesW
push 0x47a560
call sub.kernel32.dll_DeleteFileW
mov eax, 0x47a5cc
call fcn.00478ab8
mov eax, 0x47a5e4
call fcn.00478ab8
mov eax, 0x47a5fc
call fcn.00478ab8
lea edx, [ebp - 0x1c]
mov eax, dword [0x633998]
mov eax, dword [eax + 0x5c]
call fcn.004227e8
cmp dword [ebp - 0x1c], 0
je 0x47a242
mov eax, dword [0x633998]
mov eax, dword [eax + 0x5c]
call fcn.00478ab8
mov eax, 0x47a614
call fcn.00423348
mov eax, dword [0x633f84]
cmp byte [eax], 0
je 0x47a26c
mov ecx, 0x47a620
mov eax, 0x503dac
mov edx, 0x9000
call fcn.00464384
jmp 0x47a2ac
push 0x20
push 0x47a630
call sub.kernel32.dll_SetFileAttributesW
push 0x20
push 0x47a644
call sub.kernel32.dll_SetFileAttributesW
push 0x47a65c
call sub.kernel32.dll_DeleteFileA
push 0x47a668
call sub.kernel32.dll_DeleteFileA
mov ecx, 0x47a620
mov eax, 0x4f97ac
mov edx, 0xa600
call fcn.00464384
mov ecx, 0x47a674
mov eax, 0x50cdac
mov edx, 0x4000
call fcn.00464384
mov ecx, 0x47a698
mov eax, 0x510dac
mov edx, 0x8000
call fcn.00464384
mov ecx, 0x47a6c8
mov eax, 0x518dac
mov edx, 0x8000
call fcn.00464384
mov ecx, 0x47a6f8
mov eax, str.DDS_
mov edx, 0x10080
call fcn.00464384
mov ecx, 0x47a714
mov eax, 0x48ee78
mov edx, 0xcaa0
call fcn.00464384
mov ecx, 0x47a72c
mov eax, str.MAXFILE_C3_00001MOTI
mov edx, 0x56f0
call fcn.00464384
mov ecx, 0x47a744
mov eax, 0x49b918
mov edx, 0xd916
call fcn.00464384
mov ecx, 0x47a75c
mov eax, str.MAXFILE_C3_00001PHY
mov edx, 0x13d09
call fcn.00464384
mov eax, dword [0x634008]
cmp byte [eax], 0
je 0x47a3bf
mov eax, dword [ebp - 8]
mov edx, eax
mov eax, 0x47a5cc
call fcn.00478538
mov eax, dword [ebp - 8]
mov edx, eax
mov eax, 0x47a5e4
call fcn.00478538
mov eax, dword [ebp - 8]
mov edx, eax
mov eax, 0x47a5fc
call fcn.00478538
lea edx, [ebp - 0x20]
mov eax, dword [0x633998]
mov eax, dword [eax + 0x5c]
call fcn.004227e8
cmp dword [ebp - 0x20], 0
je 0x47a3ab
mov eax, dword [ebp - 8]
mov edx, eax
mov eax, dword [0x633998]
mov eax, dword [eax + 0x5c]
call fcn.00478538
mov ecx, 0x47a770
mov eax, 0x520dac
mov edx, 0x1167d
call fcn.00464384
mov eax, dword [ebp - 4]
call fcn.004792cc
mov ebx, eax
test bl, bl
je 0x47a3da
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x633974]
mov dword [edx], eax
mov eax, dword [0x633a40]
mov byte [eax], 1
jmp 0x47a3f4
push 0x10
push 0
push 0x47a788
push 0
call sub.user32.dll_MessageBoxW
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47a41e
lea eax, [ebp - 0x20]
mov edx, 5
call fcn.004053ec
lea eax, [ebp - 4]
call fcn.004053c8
ret