Function at 0x403230
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [0x4251c0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
mov eax, esi
push edi
cmp dword [esi + 0x14], 0xf
jbe 0x403250
mov eax, dword [esi]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x403270
call ebx
cmp eax, 0xb7
jne 0x40352b
push str.Modules_
lea eax, [ebp - 0x1c]
push esi
push eax
call fcn.00401120
mov edi, eax
add esp, 0xc
cmp esi, edi
je 0x4032b0
mov ecx, esi
call fcn.004016f0
movups xmm0, xmmword [edi]
movups xmmword [esi], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
mov ecx, dword [ebp - 8]
cmp ecx, 0xf
jbe 0x4032e4
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4032da
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4035d2
push ecx
push edx
call fcn.004063eb
add esp, 8
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x4032ee
mov eax, dword [esi]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x403308
call ebx
cmp eax, 0xb7
jne 0x40352b
push str.Pester_
lea eax, [ebp - 0x1c]
push esi
push eax
call fcn.00401120
mov edi, eax
add esp, 0xc
cmp esi, edi
je 0x403385
mov ecx, dword [esi + 0x14]
cmp ecx, 0xf
jbe 0x403353
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x403349
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4035d7
mov eax, edx
push ecx
push eax
call fcn.004063eb
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
movups xmm0, xmmword [edi]
movups xmmword [esi], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
mov ecx, dword [ebp - 8]
cmp ecx, 0xf
jbe 0x4033b9
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4033af
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4035d7
push ecx
push edx
call fcn.004063eb
add esp, 8
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x4033c3
mov eax, dword [esi]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x4033dd
call ebx
cmp eax, 0xb7
jne 0x40352b
push str.3.4.0_
lea eax, [ebp - 0x1c]
push esi
push eax
call fcn.00401120
mov edi, eax
add esp, 0xc
cmp esi, edi
je 0x40345a
mov ecx, dword [esi + 0x14]
cmp ecx, 0xf
jbe 0x403428
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x40341e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4035d2
mov eax, edx
push ecx
push eax
call fcn.004063eb
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
movups xmm0, xmmword [edi]
movups xmmword [esi], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
lea ecx, [ebp - 0x1c]
call fcn.004016f0
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x40346c
mov eax, dword [esi]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x403486
call ebx
cmp eax, 0xb7
jne 0x40352b
push str.bin_
lea eax, [ebp - 0x1c]
push esi
push eax
call fcn.00401120
mov edi, eax
add esp, 0xc
cmp esi, edi
je 0x403503
mov ecx, dword [esi + 0x14]
cmp ecx, 0xf
jbe 0x4034d1
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x4034c7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4035d2
mov eax, edx
push ecx
push eax
call fcn.004063eb
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
movups xmm0, xmmword [edi]
movups xmmword [esi], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
lea ecx, [ebp - 0x1c]
call fcn.004016f0
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x403515
mov eax, dword [esi]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x40353e
call ebx
cmp eax, 0xb7
je 0x40353e
pop edi
pop esi
xor al, al
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004063ad
mov esp, ebp
pop ebp
ret
push 0x41c52c
lea eax, [ebp - 0x1c]
push esi
push eax
call fcn.00401120
mov edi, eax
add esp, 0xc
cmp esi, edi
je 0x4035b7
mov ecx, dword [esi + 0x14]
cmp ecx, 0xf
jbe 0x403585
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x40357b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4035d2
mov eax, edx
push ecx
push eax
call fcn.004063eb
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
movups xmm0, xmmword [edi]
movups xmmword [esi], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
lea ecx, [ebp - 0x1c]
call fcn.004016f0
mov ecx, dword [ebp - 4]
mov al, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004063ad
mov esp, ebp
pop ebp
ret
call fcn.0040e54b
call fcn.0040e54b
int3