Function at 0x435627
Capabilities:
Create directory

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0x8c
mov eax, dword [0x46b114]
xor eax, ebp
mov dword [ebp + 0x74], eax
push ebx
mov ebx, ecx
cmp dword [ebx + 0x4c], 8
push esi
push edi
jb 0x43564c
mov eax, dword [ebx + 0x38]
jmp 0x43564f
lea eax, [ebx + 0x38]
push 0
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectoryExW]
cmp dword [ebx + 0x4c], 8
jb 0x435665
mov eax, dword [ebx + 0x38]
jmp 0x435668
lea eax, [ebx + 0x38]
push str.config.ini
push eax
mov esi, 0x46cb80
push esi
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebx + 0xf8]
cmp dword [eax + 0x18], 8
jb 0x43568b
mov eax, dword [eax + 4]
jmp 0x43568e
add eax, 4
mov edi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
push esi
push eax
push 0x4551c0
push str.product
call edi
lea eax, [ebx + 0xa4]
cmp dword [eax + 0x18], 8
jb 0x4356b3
mov eax, dword [eax + 4]
jmp 0x4356b6
add eax, 4
push esi
push eax
push 0x45c964
push str.product
call edi
lea eax, [ebx + 0x114]
cmp dword [eax + 0x18], 8
jb 0x4356d5
mov eax, dword [eax + 4]
jmp 0x4356d8
add eax, 4
push esi
push eax
push str.version
push str.product
call edi
lea eax, [ebx + 0x88]
cmp dword [eax + 0x18], 8
jb 0x4356f7
mov eax, dword [eax + 4]
jmp 0x4356fa
add eax, 4
push esi
push eax
push str.path
push str.product
call edi
lea eax, [ebx + 0x130]
cmp dword [eax + 0x18], 0x10
jb 0x435719
mov eax, dword [eax + 4]
jmp 0x43571c
add eax, 4
mov dword [ebp - 0x10], eax
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x435755
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, 0x3fffffff
mov dword [ebp - 0x14], eax
jle 0x43573e
xor eax, eax
jmp 0x435755
add eax, eax
call fcn.00439770
mov eax, esp
push 3
push dword [ebp - 0x14]
push dword [ebp - 0x10]
push eax
call fcn.00434e21
push esi
push eax
push str.peerid
push str.product
call edi
lea eax, [ebx + 0x14c]
cmp dword [eax + 0x18], 0x10
jb 0x435774
mov eax, dword [eax + 4]
jmp 0x435777
add eax, 4
mov dword [ebp - 0x10], eax
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x4357b0
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, 0x3fffffff
mov dword [ebp - 0x14], eax
jle 0x435799
xor eax, eax
jmp 0x4357b0
add eax, eax
call fcn.00439770
mov eax, esp
push 3
push dword [ebp - 0x14]
push dword [ebp - 0x10]
push eax
call fcn.00434e21
push esi
push eax
push str.thunder_estr
push str.product
call edi
push 0
call dword [sym.imp.MSVCR90.dll__time64]
push edx
push eax
lea eax, [ebp - 0xc]
push 0x45c700
push eax
call fcn.0041fb80
add esp, 0x14
push esi
lea eax, [ebp - 0xc]
push eax
push str.risetime
push str.product
call edi
push dword [ebx + 0xc]
lea eax, [ebp - 0xc]
push 0x45c700
push eax
call fcn.0041fb80
add esp, 0xc
push esi
lea eax, [ebp - 0xc]
push eax
push str.showmode
push str.report
call edi
push dword [ebx + 0x10]
lea eax, [ebp - 0xc]
push 0x45c700
push eax
call fcn.0041fb80
add esp, 0xc
push esi
lea eax, [ebp - 0xc]
push eax
push 0x455138
push str.report
call edi
cmp byte [ebx + 0x14], 0
push esi
je 0x435842
push 0x45c960
jmp 0x435847
push 0x455134
push str.needsend
push str.report
call edi
push dword [ebx + 0x1a8]
lea eax, [ebp - 0xc]
push 0x45c700
push eax
call fcn.0041fb80
add esp, 0xc
push esi
lea eax, [ebp - 0xc]
push eax
push str.language
push str.report
call edi
cmp byte [ebx + 0x168], 0
push esi
je 0x43588c
push 0x45c960
jmp 0x435891
push 0x455134
push str.need
push str.restart
call edi
cmp dword [ebx + 0x1a4], 0
push esi
jle 0x4358ae
push 0x45c960
jmp 0x4358b3
push 0x455134
push str.auto
push str.restart
call edi
push dword [ebx + 0x1a4]
lea eax, [ebp - 0xc]
push 0x45c700
push eax
call fcn.0041fb80
add esp, 0xc
push esi
lea eax, [ebp - 0xc]
push eax
push str.autostep
push str.restart
call edi
lea eax, [ebx + 0x16c]
cmp dword [eax + 0x18], 8
jb 0x4358f8
mov eax, dword [eax + 4]
jmp 0x4358fb
add eax, 4
push esi
push eax
push str.path
push str.restart
call edi
lea eax, [ebx + 0x188]
cmp dword [eax + 0x18], 8
jb 0x43591a
mov eax, dword [eax + 4]
jmp 0x43591d
add eax, 4
push esi
push eax
push str.param
push str.restart
call edi
cmp byte [ebx + 8], 0
je 0x435975
lea eax, [ebx + 0xc0]
cmp dword [eax + 0x18], 8
jb 0x435942
mov eax, dword [eax + 4]
jmp 0x435945
add eax, 4
push esi
push eax
push str.path
push str.doctor
call edi
lea eax, [ebx + 0xdc]
cmp dword [eax + 0x18], 8
jb 0x435964
mov eax, dword [eax + 4]
jmp 0x435967
add eax, 4
push esi
push eax
push str.param
push str.doctor
call edi
mov eax, dword [ebx + 0x1ec]
sub eax, dword [ebx + 0x1e8]
and dword [ebp - 0x10], 0
add ebx, 0x1dc
sar eax, 2
test eax, eax
jbe 0x4359cc
mov eax, dword [ebp - 0x10]
inc eax
push eax
mov ecx, ebx
call fcn.00435601
push dword [ebp - 0x10]
mov ecx, ebx
mov dword [ebp - 0x14], eax
call fcn.00435601
mov ecx, dword [ebp - 0x14]
push esi
push dword [ecx]
push dword [eax]
push str.info
call edi
mov eax, dword [ebx + 0x10]
sub eax, dword [ebx + 0xc]
add dword [ebp - 0x10], 2
sar eax, 2
cmp dword [ebp - 0x10], eax
jb 0x435992
lea esp, [ebp - 0x20]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x74]
xor ecx, ebp
call fcn.004390e8
add ebp, 0x78
leave
ret