Function at 0x40e622
Capabilities:
Create directory

Disassembly:
push 0xac
mov eax, 0x46b596
call fcn.0042a2ac
mov edi, ecx
mov dword [ebp - 0xb0], edi
mov eax, dword [edi + 0x178]
dec eax
je 0x40e6f0
dec eax
dec eax
je 0x40e6e6
dec eax
jne 0x40e8d8
push eax
call fcn.0040ea61
push 5
mov ecx, edi
call fcn.0040e99f
xor ebx, ebx
mov esi, 0x19f
inc ebx
push esi
mov dword [edi + 0x178], ebx
call fcn.004034f8
push 0xd4
mov dword [ebp - 0x58], eax
call fcn.004034f8
push esi
mov dword [ebp - 0x54], eax
call fcn.004034f8
mov ecx, dword [edi + 0xbc]
mov esi, eax
call fcn.0040a39c
add eax, esi
push 0xd4
mov dword [ebp - 0x50], eax
call fcn.004034f8
mov ecx, dword [edi + 0xbc]
mov esi, eax
call fcn.0040a3c3
mov ecx, dword [ebp - 0xb0]
add eax, esi
add edi, 0xdc
mov dword [ebp - 0x4c], eax
lea esi, [ebp - 0x58]
add ecx, 8
push ebx
push 0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040fa55
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x40e8d8
call fcn.0040ee4c
jmp 0x40e8d8
xor ebx, ebx
xor esi, esi
inc ebx
cmp byte [edi + 0x1a5], 0
jne 0x40e790
cmp dword [edi + 0x64], esi
je 0x40e790
lea eax, [edi + 0x54]
push eax
lea ecx, [ebp - 0x60]
call fcn.00407178
push 0x478cd4
mov dword [ebp - 4], esi
call fcn.0040359e
pop ecx
push eax
push ecx
push 0x478cd4
lea ecx, [ebp - 0x60]
call fcn.0040996d
push esi
push eax
lea ecx, [ebp - 0x60]
call fcn.004098a3
lea ecx, [ebp - 0x90]
call fcn.00408155
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], bl
push ecx
mov edx, eax
lea ecx, [ebp - 0x78]
call fcn.00408771
pop ecx
cmp dword [eax + 0x14], 8
jb 0x40e763
mov eax, dword [eax]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push esi
push ebx
lea ecx, [ebp - 0x78]
call fcn.004041d3
push esi
push ebx
lea ecx, [ebp - 0x90]
call fcn.004041d3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x60]
push esi
push ebx
call fcn.004041d3
lea eax, [edi + 8]
mov dword [edi + 0x178], 2
push ebx
push esi
mov ecx, eax
mov dword [ebp - 0xb4], eax
call fcn.0040fa55
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
call dword [sym.imp.USER32.dll_ReleaseCapture]
movdqa xmm0, xmmword [0x47a9e0]
movdqu xmmword [ebp - 0x48], xmm0
push 0xd
movdqa xmm0, xmmword [0x47aa00]
movdqu xmmword [ebp - 0x38], xmm0
pop eax
movdqa xmm0, xmmword [0x47aa20]
mov dword [ebp - 0x18], 8
mov dword [ebp - 0xac], esi
movdqu xmmword [ebp - 0x28], xmm0
test eax, eax
je 0x40e82e
lea edi, [ebp - 0x48]
mov ecx, dword [ebp - 0xb4]
push esi
push dword [edi]
call fcn.0040fa55
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 0xac]
lea edi, [edi + 4]
inc eax
mov dword [ebp - 0xac], eax
cmp eax, 0xd
jne 0x40e7f7
mov edi, dword [ebp - 0xb0]
push 0x479334
call fcn.0040359e
pop ecx
push eax
push 0x479334
lea ecx, [edi + 0x17c]
call fcn.004044a7
mov dword [ebp - 0xb8], 0x12
mov dword [ebp - 0xac], esi
test ebx, ebx
je 0x40e89b
lea edi, [ebp - 0xb8]
mov ecx, dword [ebp - 0xb4]
push 5
push dword [edi]
call fcn.0040fa55
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 0xac]
lea edi, [edi + 4]
inc eax
mov dword [ebp - 0xac], eax
cmp eax, ebx
jne 0x40e864
mov edi, dword [ebp - 0xb0]
lea ecx, [ebp - 0xa8]
call fcn.00407f81
mov ecx, eax
call fcn.004080c7
push esi
push 1
lea ecx, [ebp - 0xa8]
mov bl, al
call fcn.004041d3
test bl, bl
je 0x40e8cd
mov eax, dword [edi + 0x1c4]
mov dword [eax], 2
mov ecx, dword [edi + 0x1c4]
call fcn.00415677
call fcn.0042a25b
ret