Function at 0x43e500
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x616659
mov eax, dword fs:[0]
push eax
sub esp, 0x228
mov eax, dword [0x6963f4]
xor eax, esp
mov dword [esp + 0x220], eax
push ebx
push esi
push edi
mov eax, dword [0x6963f4]
xor eax, esp
push eax
lea eax, [esp + 0x238]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
and eax, 0xffff
cmp eax, 0x503
mov ebx, ecx
mov dword [esp + 0x24], ebx
jg 0x43e8c7
cmp eax, 0x501
jge 0x43e89d
sub eax, 1
jne 0x43e8ce
cmp dword [ebx + 0xcc], eax
je 0x43e591
mov eax, dword [ebx + 0xac]
mov edx, dword [eax + 0x15c]
lea ecx, [ebx + 0xac]
call edx
test eax, eax
je 0x43ea27
cmp dword [ebx + 0x3c0], 0
je 0x43e5b6
mov eax, dword [ebx + 0x3a0]
mov edx, dword [eax + 0x15c]
lea ecx, [ebx + 0x3a0]
call edx
test eax, eax
je 0x43ea27
cmp dword [ebx + 0xab4], 0
je 0x43e5db
mov eax, dword [ebx + 0xa94]
mov edx, dword [eax + 0x15c]
lea ecx, [ebx + 0xa94]
call edx
test eax, eax
je 0x43ea27
cmp dword [ebx + 0xe4c], 0
je 0x43e600
mov eax, dword [ebx + 0xe2c]
mov edx, dword [eax + 0x15c]
lea ecx, [ebx + 0xe2c]
call edx
test eax, eax
je 0x43ea27
cmp dword [ebx + 0xee8], 0
je 0x43e625
mov eax, dword [ebx + 0xec8]
mov edx, dword [eax + 0x15c]
lea ecx, [ebx + 0xec8]
call edx
test eax, eax
je 0x43ea27
cmp dword [ebx + 0x9b0], 0
mov eax, dword [ebx + 0x1168]
mov ecx, dword [ebx + 0x1164]
mov edx, dword [ebx + 0x116c]
mov dword [0x6b40b8], eax
mov eax, dword [ebx + 0x1170]
mov dword [0x6b40bc], ecx
mov dword [0x69eebc], edx
mov dword [0x6b40c0], eax
je 0x43e66e
lea ecx, [ebx + 0x990]
push ecx
lea esi, [ebx + 0x113c]
call fcn.0043c180
cmp dword [ebx + 0x11cc], 0
jne 0x43e815
mov eax, dword [ebx + 0x1130]
call fcn.00402f50
test eax, eax
jne 0x43e815
call fcn.00401d70
push eax
push 0x640b14
call fcn.005669af
add esp, 8
lea ecx, [esp + 0x14]
mov esi, eax
call fcn.00401450
lea ecx, [esp + 0x18]
mov dword [esp + 0x240], 0
call fcn.00401450
lea edx, [esp + 0x14]
mov byte [esp + 0x240], 1
mov ecx, dword [ebx + 0x1128]
push edx
call fcn.00561a0d
lea eax, [esp + 0x14]
push eax
add esi, 0x1688
lea ecx, [esp + 0x20]
push esi
push ecx
call fcn.00404940
add esp, 0xc
push str..hs5stamp
push eax
lea edx, [esp + 0x30]
push edx
mov byte [esp + 0x24c], 2
call fcn.00401be0
add esp, 0xc
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x244], 3
call fcn.00407290
lea ecx, [esp + 0x28]
call fcn.00401510
lea ecx, [esp + 0x1c]
mov byte [esp + 0x240], 1
call fcn.00401510
lea eax, [ebx + 0x1138]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.0041bc50
add esp, 8
test al, al
je 0x43e7bd
mov ecx, dword [esp + 0x18]
push 0
push ecx
call fcn.005a0abb
add esp, 8
test eax, eax
jne 0x43e7bd
lea edx, [esp + 0x20]
push edx
mov edi, 0xb7
call fcn.004dd5f0
mov ecx, dword [esp + 0x18]
mov eax, dword [eax]
add esp, 4
push ecx
push eax
lea edx, [esp + 0x34]
push edx
call fcn.0059e1a7
add esp, 0xc
lea ecx, [esp + 0x20]
call fcn.00401510
push 0
push 4
lea eax, [esp + 0x34]
push eax
call fcn.0056a67b
cmp eax, 6
je 0x43e7bd
lea ecx, [esp + 0x18]
call fcn.00401510
lea ecx, [esp + 0x14]
call fcn.00401510
jmp 0x43ea27
lea ecx, [esp + 0x14]
push ecx
lea ecx, [ebx + 0x1138]
call fcn.00407290
mov eax, dword [esi]
push 0
push eax
call fcn.005a0abb
add esp, 8
test eax, eax
jge 0x43e7e9
mov esi, dword [esi]
push 0
push esi
call dword [sym.imp.kernel32.dll_CreateDirectoryA]
mov eax, dword [esp + 0x18]
lea esi, [ebx + 0x113c]
call fcn.0043c2a0
lea ecx, [esp + 0x18]
call fcn.00401510
lea ecx, [esp + 0x14]
mov dword [esp + 0x240], 0xffffffff
call fcn.00401510
cmp dword [ebx + 0x11c8], 0
je 0x43e884
cmp dword [ebx + 0x11cc], 0
jne 0x43e836
mov eax, dword [ebx + 0x112c]
call fcn.00402f50
test eax, eax
jne 0x43e884
call fcn.00401d70
push eax
push 0x640b14
call fcn.005669af
push 0x8c
mov esi, eax
call fcn.0055dbcb
add esp, 0xc
test eax, eax
je 0x43e862
call fcn.0043bf50
mov edi, eax
jmp 0x43e864
xor edi, edi
add ebx, 0x113c
push ebx
mov ebx, edi
call fcn.0043c020
push edi
xor edi, edi
call fcn.00425950
push eax
call fcn.0041eb90
mov ebx, dword [esp + 0x24]
call fcn.0043ead0
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
push eax
push ecx
mov ecx, ebx
call fcn.00568b16
jmp 0x43ea2c
mov ecx, dword [ebx + 0x1128]
xor edx, edx
cmp eax, 0x502
setne dl
push edx
call fcn.00565324
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
push eax
push ecx
mov ecx, ebx
call fcn.00568b16
jmp 0x43ea2c
cmp eax, 0x3021
je 0x43e8e2
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
push eax
push ecx
mov ecx, ebx
call fcn.00568b16
jmp 0x43ea2c
cmp dword [ebx + 0xcc], 0
je 0x43e907
mov edx, dword [ebx + 0xac]
mov eax, dword [edx + 0x15c]
lea ecx, [ebx + 0xac]
call eax
test eax, eax
je 0x43ea27
cmp dword [ebx + 0x3c0], 0
je 0x43e92c
mov edx, dword [ebx + 0x3a0]
mov eax, dword [edx + 0x15c]
lea ecx, [ebx + 0x3a0]
call eax
test eax, eax
je 0x43ea27
cmp dword [ebx + 0xab4], 0
je 0x43e951
mov edx, dword [ebx + 0xa94]
mov eax, dword [edx + 0x15c]
lea ecx, [ebx + 0xa94]
call eax
test eax, eax
je 0x43ea27
cmp dword [ebx + 0xe4c], 0
je 0x43e976
mov edx, dword [ebx + 0xe2c]
mov eax, dword [edx + 0x15c]
lea ecx, [ebx + 0xe2c]
call eax
test eax, eax
je 0x43ea27
cmp dword [ebx + 0xee8], 0
je 0x43e99b
mov edx, dword [ebx + 0xec8]
mov eax, dword [edx + 0x15c]
lea ecx, [ebx + 0xec8]
call eax
test eax, eax
je 0x43ea27
cmp dword [ebx + 0x9b0], 0
je 0x43e9b6
lea ecx, [ebx + 0x990]
push ecx
lea esi, [ebx + 0x113c]
call fcn.0043c180
push ebx
lea edx, [esp + 0x30]
lea ecx, [ebx + 0x113c]
push edx
call fcn.004408d0
lea ecx, [esp + 0x2c]
mov dword [esp + 0x240], 4
call fcn.00563e51
test eax, eax
je 0x43ea0d
cmp dword [ebx + 0xab4], 0
mov eax, dword [ebx + 0x1154]
mov ecx, dword [ebx + 0x1158]
mov dword [ebx + 0xe10], eax
mov dword [ebx + 0xe0c], ecx
je 0x43ea0d
push 0
lea ecx, [ebx + 0xa94]
call fcn.0056005f
lea edx, [esp + 0x2c]
push edx
mov dword [esp + 0x244], 0xffffffff
call fcn.0043ea60
call fcn.0043ead0
mov eax, 1
mov ecx, dword [esp + 0x238]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x220]
xor ecx, esp
call fcn.0059e0c2
mov esp, ebp
pop ebp
ret 8