Function at 0x48fe76
Capabilities:
Enumerate files on windows
Print debug messages

Disassembly:
push ebx
push esi
push edi
push ebp
sub esp, 0x280
mov ebp, ecx
call fcn.0048e020
push 0x68cfc4
push 0x68cfc8
call fcn.0048df90
cmp dword [0x7f3c60], 1
pop ecx
mov esi, dword [ebp + 0x50]
pop ecx
mov byte [0xa10a4d], 1
mov ebx, eax
jne 0x48fead
xor al, al
mov byte [0x697d54], al
xor eax, eax
test ebx, ebx
mov dword [esp + 8], eax
mov byte [esp + 4], 1
je 0x490107
lea eax, [esp + 0xc]
push 0x1d
push eax
push ebx
call fcn.0048df50
lea eax, [esp + 0x18]
add esp, 0xc
push 0x1a
push str.THIS_FILE_IS_NOT_VALID_YET
push eax
call fcn.00642650
add esp, 0xc
test eax, eax
jne 0x48fef6
mov byte [esp + 4], 0
jmp 0x48ff13
push 0
push 0
push ebx
call fcn.0048dee0
lea eax, [esp + 0x14]
add esp, 0xc
push 4
push eax
push ebx
call fcn.0048df50
add esp, 0xc
cmp byte [esp + 4], 0
je 0x490107
cmp dword [esp + 8], 3
jl 0x490107
mov ecx, 0x9b491c
push ebx
call fcn.00619f70
push 0x14
push 0x7f8378
push ebx
call fcn.0048df50
add esp, 0xc
push 0x14
push 0x7f8378
push ebx
call fcn.0048df50
add esp, 0xc
push 4
push 0x7f8378
push ebx
call fcn.0048df50
add esp, 0xc
push 4
push 0x7f8378
push ebx
call fcn.0048df50
add esp, 0xc
push 1
push 0x7f8378
push ebx
call fcn.0048df50
add esp, 0xc
push 1
push 0x7f8378
push ebx
call fcn.0048df50
add esp, 0xc
push 1
push 0x7f8378
push ebx
call fcn.0048df50
add esp, 0xc
push 1
push 0x7e46f7
push ebx
call fcn.0048df50
add esp, 0xc
push 4
push 0x94dbd0
push ebx
call fcn.0048df50
add esp, 0xc
push 1
push 0xa10a4d
push ebx
call fcn.0048df50
add esp, 0xc
push 1
push 0x69c610
push ebx
call fcn.0048df50
lea eax, [ebp + 0x29]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x2a]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x5a]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x2b]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x27]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x26]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x28]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x18]
add esp, 0xc
push 2
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x1c]
add esp, 0xc
push 4
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x20]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x22]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x25]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x60]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x15b]
add esp, 0xc
push 0x100
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x5b]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x50]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0xa]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0xc]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
lea eax, [ebp + 0x21]
add esp, 0xc
push 1
push eax
push ebx
call fcn.0048df50
add esp, 0xc
push ebx
call fcn.0048dea0
pop ecx
push 0x68bf64
call fcn.0048e030
cmp byte [ebp + 0x5b], 0
pop ecx
jne 0x490128
mov byte [0xa10b4c], 1
jmp 0x49012f
xor al, al
mov byte [0xa10b4c], al
fld dword [ebp + 0x1c]
fstp dword [0x690220]
cmp byte [ebp + 0x26], 0xfd
jne 0x490142
mov byte [ebp + 0x26], 0xfe
mov al, byte [ebp + 0x26]
mov byte [ebp + 0x6d], al
cmp dword [ebp + 0x50], esi
je 0x49017d
mov ecx, 0x94b220
mov byte [ebp + 0x58], 1
call fcn.005850b0
mov ecx, 0x94b220
call fcn.005854f0
mov ecx, ebp
mov byte [ebp + 0x6e], 1
call fcn.004a3882
push str.The_previously_saved_language_is_now_in_use
call dword [sym.imp.kernel32.dll_OutputDebugStringA]
jmp 0x490182
xor al, al
mov byte [ebp + 0x58], al
lea eax, [esp + 0x40]
xor bl, bl
push eax
push str.skins.bmp
call dword [sym.imp.kernel32.dll_FindFirstFileA]
lea esi, [esp + 0x6c]
mov edi, eax
mov al, 1
jmp 0x4901ea
lea eax, [esp + 0x180]
lea edx, [ebp + 0x15b]
push edx
push eax
call fcn.00642560
lea eax, [esp + 0x188]
pop ecx
pop ecx
push str..bmp
push eax
call fcn.006425b0
lea eax, [esp + 0x188]
pop ecx
pop ecx
push eax
push esi
call fcn.00642620
test eax, eax
pop ecx
pop ecx
jne 0x4901de
mov bl, 1
lea eax, [esp + 0x40]
push eax
push edi
call dword [sym.imp.kernel32.dll_FindNextFileA]
cmp edi, 0xffffffff
je 0x4901f3
test al, al
jne 0x49019e
push edi
call dword [sym.imp.kernel32.dll_FindClose]
test bl, bl
jne 0x490225
push str.Default_skin_set_as_no_other_skins_are_available_OR_saved_skin_not_found_
call dword [sym.imp.kernel32.dll_OutputDebugStringA]
lea edi, [ebp + 0x15b]
mov esi, 0x68d060
movsd dword es:[edi], dword [esi]
add ebp, 0x25b
movsb byte es:[edi], byte [esi]
mov edi, ebp
mov esi, 0x68d060
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
add esp, 0x280
pop ebp
pop edi
pop esi
pop ebx
ret