Function at 0x482fc9
Capabilities:
Create directory

Disassembly:
mov eax, 0x4980db
call fcn.00497cb0
sub esp, 0x90
mov eax, dword [0x4b8484]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push esi
mov dword [ebp - 0x10], eax
mov byte [ebp - 0x35], 1
call sub.MSVCR71.dll_strlen
pop ecx
mov edi, eax
lea ecx, [ebp - 0x34]
mov dword [ebp + 8], edi
call fcn.00483344
xor ebx, ebx
cmp edi, 3
mov dword [ebp - 4], ebx
jle 0x483087
push 1
push 0x4a46f0
push esi
call fcn.00484244
add esp, 0xc
test al, al
je 0x483087
push ebx
push ebx
lea eax, [esi + 3]
push 0x5c
push eax
call fcn.00483d45
add esp, 0x10
cmp eax, ebx
je 0x483087
sub eax, esi
push esi
lea ecx, [ebp - 0x9c]
mov edi, eax
call fcn.00483361
push edi
push ebx
lea ecx, [ebp - 0x78]
push ecx
lea ecx, [eax + 4]
mov byte [ebp - 4], 1
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::substr_unsigned_int__unsigned_int_]
push eax
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 2
call fcn.00483384
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 3
call dword [eax + 0xc]
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 2
call fcn.004835c3
mov byte [ebp - 4], 1
jmp 0x48311e
cmp edi, 4
jle 0x483137
push ebx
push 0x4a46f4
push esi
call fcn.00484244
add esp, 0xc
test al, al
je 0x483137
push ebx
push ebx
lea eax, [esi + 2]
push 0x5c
push eax
call fcn.00483d45
add esp, 0x10
cmp eax, ebx
je 0x483137
push ebx
push ebx
inc eax
push 0x5c
push eax
call fcn.00483d45
add esp, 0x10
cmp eax, ebx
je 0x483137
sub eax, esi
push esi
lea ecx, [ebp - 0x9c]
mov edi, eax
call fcn.00483361
push edi
push ebx
lea ecx, [ebp - 0x78]
push ecx
lea ecx, [eax + 4]
mov byte [ebp - 4], 4
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::substr_unsigned_int__unsigned_int_]
push eax
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00483384
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 6
call dword [eax + 0xc]
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.004835c3
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x78]
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], bl
call fcn.004835c3
jmp 0x483141
mov eax, dword [ebp - 0x34]
push esi
lea ecx, [ebp - 0x34]
call dword [eax + 8]
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP71.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call fcn.00482e2c
test al, al
pop ecx
jne 0x48316c
push ebx
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP71.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
setne byte [ebp - 0x35]
cmp byte [edi + esi], bl
je 0x483215
push ebx
push ebx
lea eax, [edi + esi + 1]
push 0x5c
push eax
call fcn.00483d45
add esp, 0x10
cmp eax, ebx
je 0x4831f4
sub eax, esi
push esi
lea ecx, [ebp - 0x9c]
mov edi, eax
call fcn.00483361
push edi
push ebx
lea ecx, [ebp - 0x78]
push ecx
lea ecx, [eax + 4]
mov byte [ebp - 4], 7
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::substr_unsigned_int__unsigned_int_]
push eax
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 8
call fcn.00483384
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 9
call dword [eax + 0xc]
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 8
call fcn.004835c3
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 7
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], bl
call fcn.004835c3
jmp 0x48320c
cmp byte [edi + esi], bl
je 0x483215
cmp byte [edi + esi + 1], bl
je 0x483215
mov eax, dword [ebp - 0x34]
push esi
lea ecx, [ebp - 0x34]
call dword [eax + 8]
mov edi, dword [ebp + 8]
cmp byte [ebp - 0x35], bl
jne 0x483141
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call fcn.004835c3
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp - 0x35]
pop edi
pop esi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop ebx
call fcn.00497c9c
leave
ret