Function at 0x404210
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x188
mov eax, dword [0x44c010]
xor eax, esp
mov dword [esp + 0x184], eax
push esi
push edi
mov dword [esp + 0x14], ecx
push ecx
lea ecx, [esp + 0xdc]
call fcn.00404830
push ecx
lea ecx, [esp + 0xdc]
call fcn.0040c0c0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0xa0]
push dword [esp + 0x10]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x14], 0
push dword [esp + 0x14]
call fcn.0040e140
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0x64]
call fcn.0040c740
mov byte [esp + 0xc], 0
lea ecx, [esp + 0xa0]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
call fcn.0040e180
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0x8c]
call fcn.0040c740
lea ecx, [esp + 0x88]
call fcn.0040c6f0
lea ecx, [esp + 0x60]
call fcn.0040c6f0
lea eax, [esp + 0xc]
push eax
lea ecx, [ebp + 8]
call fcn.0040c220
lea ecx, [ebp + 8]
mov edx, dword [eax]
lea eax, [esp + 8]
push eax
call fcn.0040c250
push ecx
push edx
lea ecx, [esp + 0x90]
push dword [eax]
call fcn.0040e3a0
mov ecx, eax
call fcn.0040c4b0
push eax
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__mkdir]
add esp, 4
lea ecx, [esp + 0x88]
call fcn.0040c6f0
mov byte [esp + 0xc], 0
lea ecx, [esp + 0xa0]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
call fcn.0040e420
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0x64]
call fcn.0040c740
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x64]
call fcn.0040c560
lea ecx, [esp + 0x60]
mov edx, dword [eax]
lea eax, [esp + 8]
push eax
call fcn.0040c590
push edx
push dword [eax]
call fcn.0040e460
mov byte [esp + 0xc], 0
lea ecx, [esp + 0xa0]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
call fcn.0040e4a0
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0x64]
call fcn.0040c6b0
lea ecx, [esp + 0x60]
call fcn.0040c6f0
sub esp, 0x18
mov byte [esp + 0x24], 0
mov edi, esp
mov byte [esp + 0x20], 0
sub esp, 0x18
mov byte [esp + 0x40], 0
mov esi, esp
lea ecx, [esp + 0xd0]
push dword [esp + 0x3c]
push dword [esp + 0x3c]
push dword [esp + 0x48]
call fcn.0040e5a0
mov ecx, eax
call fcn.0040ad10
push eax
mov ecx, esi
call fcn.0040c740
mov ecx, edi
call fcn.00413de0
lea ecx, [esp + 0xd8]
call fcn.00414100
push 0x44c6b0
sub esp, 0x1c
mov byte [esp + 0x2c], 0
mov esi, esp
mov byte [esp + 0x28], 0
mov byte [esp + 0x30], 0
lea ecx, [esp + 0x80]
mov edi, eax
push dword [esp + 0x2c]
push dword [esp + 0x2c]
push dword [esp + 0x38]
call fcn.0040e4e0
mov ecx, eax
call fcn.0040ad10
push eax
mov ecx, esi
call fcn.0040c740
lea ecx, [esp + 0x68]
call fcn.00413de0
add esp, 4
lea edx, [ebp + 8]
lea ecx, [esp + 0x34]
push eax
call fcn.0040e520
mov edx, eax
lea ecx, [esp + 0x1c]
call fcn.0040e550
sub esp, 8
lea ecx, [esp + 0x90]
mov edx, eax
push edi
call fcn.0040e580
push eax
lea ecx, [esp + 0xe4]
call fcn.0040c0a0
lea ecx, [esp + 0x88]
call fcn.0040c340
lea ecx, [esp + 0x18]
call fcn.0040c340
lea ecx, [esp + 0x30]
call fcn.0040c340
lea ecx, [esp + 0x48]
call fcn.0040c340
lea ecx, [esp + 0xc0]
call fcn.0040c340
mov byte [esp + 0xc], 0
lea ecx, [esp + 0x60]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
call fcn.0040e5e0
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0x8c]
call fcn.0040c740
mov byte [esp + 0xc], 0
lea ecx, [esp + 0x60]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
call fcn.0040e620
mov ecx, eax
call fcn.0040ad10
push 3
push 2
lea ecx, [esp + 0x90]
call fcn.0040c630
mov byte [esp + 0xc], 0
lea ecx, [esp + 0x60]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
call fcn.0040e660
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0xc4]
call fcn.0040c740
lea ecx, [esp + 0xc0]
call fcn.0040c6f0
lea ecx, [esp + 0x88]
call fcn.0040c6f0
push 0x100
call fcn.0043fcc2
add esp, 4
mov byte [esp + 0xc], 0
mov byte [esp + 8], 0
lea ecx, [esp + 0x60]
mov byte [esp + 0x10], 0
mov esi, eax
push dword [esp + 0xc]
push dword [esp + 0xc]
push dword [esp + 0x18]
call fcn.0040e6a0
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0x8c]
call fcn.0040c740
lea eax, [esp + 0x88]
push eax
lea ecx, [esp + 0xa4]
call fcn.0040c770
mov byte [esp + 0xc], 0
lea ecx, [esp + 0x60]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
call fcn.0040e6e0
mov ecx, eax
call fcn.0040ad10
push eax
push 2
lea ecx, [esp + 0xa8]
call fcn.0040c650
push 3
lea ecx, [esp + 0x8c]
call fcn.0040c4c0
mov byte [esp + 0xc], 0
lea ecx, [esp + 0x60]
push dword [esp + 0xc]
mov byte [esp + 0xc], 0
push dword [esp + 0xc]
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
mov byte [eax], 0x44
call fcn.0040e720
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0xa4]
call fcn.0040c6e0
lea ecx, [esp + 0xa0]
call fcn.0040c6f0
lea ecx, [esp + 0x88]
call fcn.0040c6f0
lea ecx, [esp + 0xd8]
call fcn.0040c060
test al, al
je 0x40470d
mov edi, dword [esp + 0x14]
call fcn.0040e760
push 8
push 4
push esi
push edi
call eax
cmp eax, 0xffffffff
je 0x4046c0
test eax, eax
jle 0x40470d
push 0
push 4
push esi
lea ecx, [esp + 0xe4]
mov byte [eax + esi], 0
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::write_char_const___long_long___int64__]
jmp 0x404692
lea eax, [esp + 0xc]
push eax
lea ecx, [ebp + 8]
call fcn.0040c220
lea ecx, [ebp + 8]
mov edx, dword [eax]
lea eax, [esp + 8]
push eax
call fcn.0040c250
push ecx
push edx
lea ecx, [esp + 0xc8]
push dword [eax]
call fcn.0040e3a0
mov ecx, eax
call fcn.0040c4b0
mov dword [esp + 0x14], eax
lea eax, [esp + 0x14]
push eax
call fcn.004047f0
lea ecx, [esp + 0xc0]
call fcn.0040c6f0
lea ecx, [esp + 0xd8]
call fcn.0040c030
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x60]
push dword [esp + 0x14]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040de30
mov ecx, eax
call fcn.0040ad10
push eax
lea ecx, [esp + 0x8c]
call fcn.0040c740
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x60]
push dword [esp + 0x14]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040de70
mov ecx, eax
call fcn.0040ad10
push eax
sub esp, 8
lea ecx, [esp + 0x94]
call fcn.0040c5b0
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x60]
push dword [esp + 0x14]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040deb0
mov ecx, eax
call fcn.0040ad10
lea ecx, [esp + 0x88]
call fcn.0040c6f0
lea ecx, [esp + 0xd8]
call fcn.00404810
lea ecx, [ebp + 8]
call fcn.0040c340
mov ecx, dword [esp + 0x18c]
pop edi
pop esi
xor ecx, esp
call fcn.0043fc76
mov esp, ebp
pop ebp
ret 0x18