Function at 0x40bb7b
Capabilities:
Create directory
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x19f4
call fcn.00423310
mov eax, dword [0x439030]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x43acd0
mov ecx, 0x43abf8
mov eax, 0x43ac1c
push ecx
push eax
push 0x43ac08
push 0x43aca4
push 0x43abf4
push eax
push 0x43abe8
mov eax, 0x43ac18
xor ebx, ebx
push eax
push eax
push 0x43ac20
push 0x43ac80
push 0x43ac34
push ecx
push 0x43ac90
lea eax, [ebp - 0x890]
mov dword [ebp - 0x19e8], ebx
push str._s_s_s_s_s_s_s_s_s_s_s_s_s_s_s
push eax
mov esi, ebx
mov edi, ebx
call fcn.0040d22b
add esp, 0x44
lea ecx, [ebp - 0x890]
call fcn.0040242f
mov dword [ebp - 0x19ec], eax
test eax, eax
je 0x40c0c5
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x19f0], eax
test eax, eax
je 0x40c083
push dword [ebp - 0x19ec]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40c083
call eax
mov dword [ebp - 0x19e4], eax
test eax, eax
je 0x40c083
push 0x43acd0
push 0x43ac3c
push 0x43ac00
push 0x43ac2c
push 0x43ac78
mov ecx, 0x43ac20
mov eax, 0x43ac1c
push ecx
push 0x43acc4
push 0x43abf8
push eax
push 0x43ac08
push 0x43aca4
push 0x43abf4
push eax
push 0x43abe8
mov eax, 0x43ac18
push eax
push eax
push ecx
push 0x43ac80
lea eax, [ebp - 0x990]
push str._s_s_s_s_s_s_s_s_s_s_s_s_s_s_s_s_s_s
push eax
call fcn.0040d22b
add esp, 0x50
lea ecx, [ebp - 0x990]
call fcn.0040242f
mov dword [ebp - 0x19e8], eax
test eax, eax
je 0x40c083
push str.Shell32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
mov dword [ebp - 0x19dc], edi
test edi, edi
je 0x40c083
mov eax, dword [ebp - 0x19e8]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40c083
lea ecx, [ebp - 0x19e0]
mov dword [ebp - 0x19e0], ebx
push ecx
push dword [ebp - 0x19e4]
call eax
push 0x57f
mov edi, eax
mov byte [ebp - 0x790], bl
lea eax, [ebp - 0x78f]
push ebx
push eax
call fcn.0041ba00
add esp, 0xc
lea edx, [esi + str.L3RsYWNsdA]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x19e4], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40bd40
sub ecx, dword [ebp - 0x19e4]
lea eax, [ebp - 0x790]
push ecx
push edx
add eax, esi
push eax
call fcn.00401184
sub esi, 0xffffff80
cmp esi, 0x580
jl 0x40bd2f
mov ecx, dword [edi + 4]
test ecx, ecx
jne 0x40bd76
mov esi, ebx
jmp 0x40c07d
call fcn.0040242f
mov esi, eax
test esi, esi
je 0x40c07d
cmp dword [ebp - 0x19e0], 4
jne 0x40bdc4
lea eax, [ebp - 0x290]
push eax
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrIA]
test eax, eax
je 0x40c07a
mov ecx, dword [0x43c10c]
test ecx, ecx
je 0x40c07a
push dword [edi + 8]
mov eax, dword [ecx]
push dword [0x43c318]
call dword [eax]
jmp 0x40c07a
cmp dword [ebp - 0x19e0], 3
jne 0x40bea2
lea eax, [ebp - 0x390]
push eax
push esi
call fcn.00419f8e
pop ecx
pop ecx
test eax, eax
jne 0x40be02
mov ecx, dword [0x43c10c]
test ecx, ecx
je 0x40c07a
mov eax, dword [ecx]
push dword [edi + 8]
call dword [eax + 0xc0]
jmp 0x40c07a
mov ebx, dword [sym.imp.SHLWAPI.dll_StrStrIA]
lea eax, [ebp - 0x710]
push eax
push esi
call ebx
test eax, eax
je 0x40be3a
mov edi, dword [edi + 8]
call fcn.0040b2e0
test eax, eax
jne 0x40c07a
mov ecx, dword [0x43c10c]
push edi
mov eax, dword [ecx]
call dword [eax + 0xc8]
jmp 0x40c07a
lea eax, [ebp - 0x690]
push eax
push esi
call ebx
test eax, eax
je 0x40be6c
mov edi, dword [edi + 8]
call fcn.0040b2e0
test eax, eax
jne 0x40c07a
mov ecx, dword [0x43c10c]
push edi
mov eax, dword [ecx]
call dword [eax + 0xcc]
jmp 0x40c07a
lea eax, [ebp - 0x490]
push eax
push esi
call ebx
test eax, eax
je 0x40c07a
mov edi, dword [edi + 8]
call fcn.0040b2e0
test eax, eax
jne 0x40c07a
mov ecx, dword [0x43c10c]
push edi
mov eax, dword [ecx]
call dword [eax + 0xc4]
jmp 0x40c07a
cmp dword [ebp - 0x19e0], 2
jne 0x40c07d
mov edi, dword [sym.imp.SHLWAPI.dll_StrStrIA]
lea eax, [ebp - 0x790]
push eax
push esi
call edi
test eax, eax
je 0x40bed2
mov dword [0x43c338], 1
jmp 0x40c07d
lea eax, [ebp - 0x610]
push eax
push esi
call edi
test eax, eax
je 0x40bf74
xor eax, eax
push 0x1046
mov word [ebp - 0x19d8], ax
lea eax, [ebp - 0x19d6]
push ebx
push eax
call fcn.0041ba00
add esp, 0xc
lea eax, [ebp - 0x210]
push str.114MPlayer
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
call fcn.00401988
test al, al
je 0x40bf3b
call fcn.0040af3e
push eax
lea eax, [ebp - 0x19d8]
push 0x824
push eax
call fcn.0041814e
mov eax, str.comm
jmp 0x40bf57
call fcn.0040aea3
push eax
lea eax, [ebp - 0x19d8]
push 0x824
push eax
call fcn.0041814e
mov eax, str.114zhibo
add esp, 0xc
lea edx, [ebp - 0x210]
push eax
push ecx
lea ecx, [ebp - 0x19d8]
call fcn.00412cc0
pop ecx
pop ecx
jmp 0x40c07a
lea eax, [ebp - 0x590]
push eax
push esi
call edi
test eax, eax
je 0x40bfab
mov dword [0x43c334], 1
call fcn.00401988
test al, al
jne 0x40c07d
call fcn.00402485
test al, al
je 0x40c07a
jmp 0x40c07d
lea eax, [ebp - 0x510]
push eax
push esi
call edi
test eax, eax
je 0x40c067
push ebx
xor edx, edx
mov ecx, str.initac
call fcn.0040b64f
pop ecx
call fcn.00401a96
test eax, eax
je 0x40c07a
xor eax, eax
push 0x206
mov word [ebp - 0x210], ax
lea eax, [ebp - 0x20e]
push ebx
push eax
call fcn.0041ba00
add esp, 0xc
lea eax, [ebp - 0x210]
push ebx
push 0x23
push eax
push ebx
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
push 0x4318c0
mov edi, 0x104
lea eax, [ebp - 0x210]
push edi
push eax
call fcn.0041826c
add esp, 0xc
lea eax, [ebp - 0x210]
push 0x4318c4
push edi
push eax
call fcn.0041826c
add esp, 0xc
lea eax, [ebp - 0x210]
push 0x4318c0
push edi
push eax
call fcn.0041826c
add esp, 0xc
lea eax, [ebp - 0x210]
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea eax, [ebp - 0x210]
push eax
call fcn.004024e4
jmp 0x40c07a
lea eax, [ebp - 0x310]
push eax
push esi
call edi
test eax, eax
je 0x40c07d
call fcn.0040b5c6
xor ebx, ebx
inc ebx
mov edi, dword [ebp - 0x19dc]
push dword [ebp - 0x19ec]
call fcn.0041836a
pop ecx
test esi, esi
je 0x40c09a
push esi
call fcn.0041836a
pop ecx
mov eax, dword [ebp - 0x19e8]
test eax, eax
je 0x40c0ab
push eax
call fcn.0041836a
pop ecx
mov eax, dword [ebp - 0x19f0]
mov esi, dword [sym.imp.KERNEL32.dll_FreeLibrary]
test eax, eax
je 0x40c0be
push eax
call esi
test edi, edi
je 0x40c0c5
push edi
call esi
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041813f
mov esp, ebp
pop ebp
ret