Function at 0x4633bf
Capabilities:
Create directory

Disassembly:
mov eax, 0x4b1315
call fcn.0049f0d0
sub esp, 0xac
mov eax, dword [0x4f0dd0]
push ebx
push esi
push edi
mov edi, ecx
xor eax, ebp
lea esi, [edi + 0x34]
cmp dword [esi + 0x18], 8
mov dword [ebp - 0x10], eax
jb 0x4633ec
mov eax, dword [esi + 4]
jmp 0x4633ef
lea eax, [esi + 4]
xor ebx, ebx
push ebx
push eax
push ebx
call dword [sym.imp.SHELL32.dll_SHCreateDirectoryExW]
push esi
lea ecx, [ebp - 0xac]
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
push str.config.ini
lea ecx, [ebp - 0xac]
mov dword [ebp - 4], ebx
call dword [0x4b7454]
call dword [0x4ed0e0]
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
mov dword [ebp - 0xb4], eax
jae 0x46343c
lea ecx, [ebp - 0xa8]
lea eax, [edi + 0xdc]
cmp dword [eax + 0x18], 8
jb 0x46344d
mov eax, dword [eax + 4]
jmp 0x463450
add eax, 4
mov esi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
push ecx
push eax
push 0x4c43dc
mov ebx, str.product
push ebx
call esi
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x46347a
lea ecx, [ebp - 0xa8]
lea eax, [edi + 0x88]
cmp dword [eax + 0x18], 8
jb 0x46348b
mov eax, dword [eax + 4]
jmp 0x46348e
add eax, 4
push ecx
push eax
push str.name
push ebx
call esi
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x4634ad
lea ecx, [ebp - 0xa8]
lea eax, [edi + 0xf8]
cmp dword [eax + 0x18], 8
jb 0x4634be
mov eax, dword [eax + 4]
jmp 0x4634c1
add eax, 4
push ecx
push eax
push 0x4c30f0
push ebx
call esi
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x4634e0
lea ecx, [ebp - 0xa8]
cmp dword [edi + 0x84], 8
jb 0x4634ee
mov eax, dword [edi + 0x70]
jmp 0x4634f1
lea eax, [edi + 0x70]
push ecx
push eax
push str.path
push ebx
call esi
lea eax, [edi + 0x114]
cmp dword [eax + 0x18], 0x10
jb 0x46350c
mov eax, dword [eax + 4]
jmp 0x46350f
add eax, 4
mov dword [ebp - 0xb0], eax
xor eax, eax
cmp dword [ebp - 0xb0], eax
je 0x463559
push dword [ebp - 0xb0]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
mov dword [ebp - 0xb8], eax
add eax, eax
add eax, 3
and eax, 0xfffffffc
call fcn.0049f1f0
mov eax, esp
push dword [ebp - 0xb4]
push dword [ebp - 0xb8]
push dword [ebp - 0xb0]
push eax
call fcn.004627d6
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x46356e
lea ecx, [ebp - 0xa8]
push ecx
push eax
push str.peerid
push ebx
call esi
lea eax, [edi + 0x130]
cmp dword [eax + 0x18], 0x10
jb 0x463589
mov eax, dword [eax + 4]
jmp 0x46358c
add eax, 4
mov dword [ebp - 0xb0], eax
xor eax, eax
cmp dword [ebp - 0xb0], eax
je 0x4635d6
push dword [ebp - 0xb0]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
mov dword [ebp - 0xb8], eax
add eax, eax
add eax, 3
and eax, 0xfffffffc
call fcn.0049f1f0
mov eax, esp
push dword [ebp - 0xb4]
push dword [ebp - 0xb8]
push dword [ebp - 0xb0]
push eax
call fcn.004627d6
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x4635eb
lea ecx, [ebp - 0xa8]
push ecx
push eax
push str.thunder_estr
push ebx
call esi
push 0
call dword [sym.imp.MSVCR71.dll_time]
push eax
lea eax, [ebp - 0x90]
push 0x4bb91c
push eax
call dword [sym.imp.MSVCR71.dll_swprintf]
mov eax, dword [ebp - 0xa8]
add esp, 0x10
cmp dword [ebp - 0x94], 8
jae 0x463628
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x90]
push eax
push str.risetime
push ebx
call esi
push dword [edi + 0xc]
lea eax, [ebp - 0x90]
push 0x4bb91c
push eax
call dword [sym.imp.MSVCR71.dll_swprintf]
mov eax, dword [ebp - 0xa8]
add esp, 0xc
cmp dword [ebp - 0x94], 8
jae 0x463665
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x90]
push eax
push str.showmode
mov ebx, str.report
push ebx
call esi
push dword [edi + 0x10]
lea eax, [ebp - 0x90]
push 0x4bb91c
push eax
call dword [sym.imp.MSVCR71.dll_swprintf]
mov eax, dword [ebp - 0xa8]
add esp, 0xc
cmp dword [ebp - 0x94], 8
jae 0x4636a7
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x90]
push eax
push str.workstate
push ebx
call esi
cmp byte [edi + 0x14], 0
mov eax, dword [ebp - 0xa8]
je 0x4636df
cmp dword [ebp - 0x94], 8
jae 0x4636d2
lea eax, [ebp - 0xa8]
push eax
push 0x4c0d64
push 0x4c4350
jmp 0x4636f9
cmp dword [ebp - 0x94], 8
jae 0x4636ee
lea eax, [ebp - 0xa8]
push eax
push 0x4c434c
push str.showmode
push ebx
call esi
push dword [edi + 0x18c]
lea eax, [ebp - 0x90]
push 0x4bb91c
push eax
call dword [sym.imp.MSVCR71.dll_swprintf]
mov eax, dword [ebp - 0xa8]
add esp, 0xc
cmp dword [ebp - 0x94], 8
jae 0x46372c
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x90]
push eax
push str.language
push ebx
call esi
cmp byte [edi + 0x14c], 0
mov eax, dword [ebp - 0xa8]
je 0x463762
cmp dword [ebp - 0x94], 8
jae 0x46375a
lea eax, [ebp - 0xa8]
push eax
push 0x4c0d64
jmp 0x463777
cmp dword [ebp - 0x94], 8
jae 0x463771
lea eax, [ebp - 0xa8]
push eax
push 0x4c434c
push str.need
mov ebx, str.restart
push ebx
call esi
cmp dword [edi + 0x188], 0
mov eax, dword [ebp - 0xa8]
jle 0x4637aa
cmp dword [ebp - 0x94], 8
jae 0x4637a2
lea eax, [ebp - 0xa8]
push eax
push 0x4c0d64
jmp 0x4637bf
cmp dword [ebp - 0x94], 8
jae 0x4637b9
lea eax, [ebp - 0xa8]
push eax
push 0x4c434c
push str.auto
push ebx
call esi
push dword [edi + 0x188]
lea eax, [ebp - 0x90]
push 0x4bb91c
push eax
call dword [sym.imp.MSVCR71.dll_swprintf]
mov eax, dword [ebp - 0xa8]
add esp, 0xc
cmp dword [ebp - 0x94], 8
jae 0x4637f7
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x90]
push eax
push str.autostep
push ebx
call esi
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x46381c
lea ecx, [ebp - 0xa8]
lea eax, [edi + 0x150]
cmp dword [eax + 0x18], 8
jb 0x46382d
mov eax, dword [eax + 4]
jmp 0x463830
add eax, 4
push ecx
push eax
push str.path
push ebx
call esi
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x46384f
lea ecx, [ebp - 0xa8]
lea eax, [edi + 0x16c]
cmp dword [eax + 0x18], 8
jb 0x463860
mov eax, dword [eax + 4]
jmp 0x463863
add eax, 4
push ecx
push eax
push str.param
push ebx
call esi
cmp byte [edi + 8], 0
je 0x4638de
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x463888
lea ecx, [ebp - 0xa8]
lea eax, [edi + 0xa4]
cmp dword [eax + 0x18], 8
jb 0x463899
mov eax, dword [eax + 4]
jmp 0x46389c
add eax, 4
push ecx
push eax
push str.path
mov ebx, str.doctor
push ebx
call esi
cmp dword [ebp - 0x94], 8
mov ecx, dword [ebp - 0xa8]
jae 0x4638c0
lea ecx, [ebp - 0xa8]
lea eax, [edi + 0xc0]
cmp dword [eax + 0x18], 8
jb 0x4638d1
mov eax, dword [eax + 4]
jmp 0x4638d4
add eax, 4
push ecx
push eax
push str.param
push ebx
call esi
lea ecx, [edi + 0x1b0]
xor ebx, ebx
call fcn.00465347
test eax, eax
jbe 0x463939
cmp dword [ebp - 0x94], 8
mov eax, dword [ebp - 0xa8]
jae 0x463904
lea eax, [ebp - 0xa8]
mov dword [ebp - 0xb4], eax
mov eax, dword [edi + 0x1b4]
push dword [ebp - 0xb4]
lea ecx, [eax + ebx*4 + 4]
push dword [ecx]
lea eax, [eax + ebx*4]
push dword [eax]
push 0x4c42d4
call esi
inc ebx
lea ecx, [edi + 0x1b0]
inc ebx
call fcn.00465347
cmp ebx, eax
jb 0x4638ef
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xac]
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea esp, [ebp - 0xc4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049f127
leave
ret