Function at 0x401f30
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x415b0f
mov eax, dword fs:[0]
push eax
sub esp, 0xd0
mov eax, dword [0x41c490]
xor eax, esp
mov dword [esp + 0xc8], eax
push ebx
push esi
push edi
mov eax, dword [0x41c490]
xor eax, esp
push eax
lea eax, [esp + 0xe0]
mov dword fs:[0], eax
mov ebx, 7
xor edi, edi
xor eax, eax
mov dword [esp + 0x44], ebx
mov dword [esp + 0x40], edi
mov word [esp + 0x30], ax
mov dword [esp + 0xe8], edi
xor ecx, ecx
push 0x12
mov eax, 0x419014
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], edi
mov word [esp + 0x18], cx
call fcn.00404800
mov byte [esp + 0xe8], 1
xor edx, edx
push 4
mov eax, str.TEMP
lea esi, [esp + 0xc0]
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xd0], edi
mov word [esp + 0xc0], dx
call fcn.00404800
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x18]
mov edx, esi
mov byte [esp + 0xec], 2
call fcn.00401760
add esp, 4
mov esi, 8
cmp dword [esp + 0xd0], esi
jb 0x402018
mov ecx, dword [esp + 0xbc]
push ecx
call fcn.00407029
add esp, 4
xor edx, edx
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xcc], edi
mov word [esp + 0xbc], dx
mov byte [esp + 0xe8], 5
cmp dword [esp + 0x28], esi
jb 0x40204b
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
mov eax, dword [esp + 0x4c]
xor ecx, ecx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], edi
mov word [esp + 0x14], cx
cmp dword [esp + 0x60], esi
jae 0x402068
lea eax, [esp + 0x4c]
push edi
push eax
call fcn.00407011
add esp, 8
cmp eax, 0xffffffff
je 0x402084
lea edx, [esp + 0x4c]
push edx
call fcn.004019c0
add esp, 4
mov eax, dword [esp + 0x4c]
cmp dword [esp + 0x60], esi
jae 0x402092
lea eax, [esp + 0x4c]
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push edi
push eax
call esi
lea eax, [esp + 0x68]
push eax
lea ebx, [esp + 0x50]
call fcn.00405070
add esp, 4
push 4
mov eax, str.adds
lea ecx, [esp + 0x6c]
mov byte [esp + 0xec], 6
call fcn.004046d0
cmp dword [esp + 0x7c], 8
mov eax, dword [esp + 0x68]
jae 0x4020d4
lea eax, [esp + 0x68]
push edi
push eax
call esi
lea ecx, [esp + 0x14]
push ecx
lea ebx, [esp + 0x6c]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 7
call fcn.00403bb0
mov ebx, 8
mov byte [esp + 0xe8], 6
cmp dword [esp + 0x28], ebx
jb 0x40211c
mov edx, dword [esp + 0x14]
push edx
call fcn.00407029
add esp, 4
push 6
mov eax, str.xx.crx
lea ecx, [esp + 0x34]
call fcn.004046d0
xor eax, eax
mov word [esp + 0x14], ax
push 4
mov eax, str.adds
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], 7
mov dword [esp + 0x28], 0
call fcn.00404800
push 0x66
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], bl
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], 6
cmp dword [esp + 0x28], ebx
jb 0x402185
mov ecx, dword [esp + 0x14]
push ecx
call fcn.00407029
add esp, 4
lea edx, [esp + 0x14]
push edx
lea ebx, [esp + 0x6c]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 9
call fcn.00403bb0
mov ebx, 6
mov edi, 8
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x4021cd
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
push ebx
mov eax, str.xx.oex
lea ecx, [esp + 0x34]
call fcn.004046d0
xor ecx, ecx
push 4
mov eax, str.adds
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], 7
mov dword [esp + 0x28], 0
mov word [esp + 0x18], cx
call fcn.00404800
push 0x67
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0xa
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x402235
mov edx, dword [esp + 0x14]
push edx
call fcn.00407029
add esp, 4
lea eax, [esp + 0x14]
push eax
lea ebx, [esp + 0x6c]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 0xb
call fcn.00403bb0
mov ebx, 6
mov edi, 8
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x40227d
mov ecx, dword [esp + 0x14]
push ecx
call fcn.00407029
add esp, 4
push ebx
mov eax, str.xx.xpi
lea ecx, [esp + 0x34]
call fcn.004046d0
xor edx, edx
push 4
mov eax, str.adds
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], 7
mov dword [esp + 0x28], 0
mov word [esp + 0x18], dx
call fcn.00404800
push 0x68
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0xc
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x4022e5
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
lea ecx, [esp + 0xa0]
push ecx
lea ebx, [esp + 0x50]
call fcn.00405070
add esp, 4
push 2
mov eax, 0x419054
lea ecx, [esp + 0xa4]
mov byte [esp + 0xec], 0xd
call fcn.004046d0
cmp dword [esp + 0xb4], 8
mov eax, dword [esp + 0xa0]
jae 0x40232c
lea eax, [esp + 0xa0]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea edx, [esp + 0x14]
push edx
lea ebx, [esp + 0xa4]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 0xe
call fcn.00403bb0
mov ebx, 0xd
mov edi, 8
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x402380
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
push ebx
mov eax, str.chr_pref.json
lea ecx, [esp + 0x34]
call fcn.004046d0
xor ecx, ecx
push 2
mov eax, 0x419054
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], 7
mov dword [esp + 0x28], 0
mov word [esp + 0x18], cx
call fcn.00404800
push 0x69
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0xf
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x4023e8
mov edx, dword [esp + 0x14]
push edx
call fcn.00407029
add esp, 4
lea eax, [esp + 0x14]
push eax
lea ebx, [esp + 0xa4]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 0x10
call fcn.00403bb0
mov bl, 0xd
mov edi, 8
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x402430
mov ecx, dword [esp + 0x14]
push ecx
call fcn.00407029
add esp, 4
push 0xb
mov eax, str.ff_set.json
lea ecx, [esp + 0x34]
call fcn.004046d0
xor edx, edx
push 2
mov eax, 0x419054
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], 7
mov dword [esp + 0x28], 0
mov word [esp + 0x18], dx
call fcn.00404800
push 0x6a
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0x11
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x402499
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
lea ecx, [esp + 0x84]
push ecx
lea ebx, [esp + 0x50]
call fcn.00405070
add esp, 4
push 3
mov eax, 0x41905c
lea ecx, [esp + 0x88]
mov byte [esp + 0xec], 0x12
call fcn.004046d0
cmp dword [esp + 0x98], 8
mov eax, dword [esp + 0x84]
jae 0x4024e0
lea eax, [esp + 0x84]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea edx, [esp + 0x14]
push edx
lea ebx, [esp + 0x88]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 0x13
call fcn.00403bb0
mov bl, 0x12
mov edi, 8
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x402531
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
push 0xb
mov eax, str.op_data.xml
lea ecx, [esp + 0x34]
call fcn.004046d0
xor ecx, ecx
push 3
mov eax, 0x41905c
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], 7
mov dword [esp + 0x28], 0
mov word [esp + 0x18], cx
call fcn.00404800
push 0x6b
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0x14
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x40259a
mov edx, dword [esp + 0x14]
push edx
call fcn.00407029
add esp, 4
lea eax, [esp + 0x14]
push eax
lea ebx, [esp + 0x88]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 0x15
call fcn.00403bb0
mov bl, 0x12
mov edi, 8
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x4025e2
mov ecx, dword [esp + 0x14]
push ecx
call fcn.00407029
add esp, 4
push 0xa
mov eax, str.op_wid.xml
lea ecx, [esp + 0x34]
call fcn.004046d0
xor edx, edx
push 3
mov eax, 0x41905c
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], 7
mov dword [esp + 0x28], 0
mov word [esp + 0x18], dx
call fcn.00404800
push 0x6c
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0x16
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x28], edi
jb 0x40264b
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
lea ecx, [esp + 0x14]
push ecx
lea ebx, [esp + 0x88]
call fcn.00405070
add esp, 4
mov edi, eax
lea esi, [esp + 0x30]
mov byte [esp + 0xe8], 0x17
call fcn.00403bb0
mov edi, 8
mov byte [esp + 0xe8], 0x12
cmp dword [esp + 0x28], edi
jb 0x402692
mov edx, dword [esp + 0x14]
push edx
call fcn.00407029
add esp, 4
push edi
mov eax, str.task.xml
lea ecx, [esp + 0x34]
call fcn.004046d0
xor eax, eax
mov word [esp + 0x14], ax
mov ebx, 7
push 3
mov eax, 0x41905c
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], 0
call fcn.00404800
push 0x6d
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0x18
call fcn.00401cd0
add esp, 4
mov byte [esp + 0xe8], 0x12
cmp dword [esp + 0x28], edi
jb 0x4026fc
mov ecx, dword [esp + 0x14]
push ecx
call fcn.00407029
add esp, 4
push 9
mov eax, str.rmAds.bat
lea esi, [esp + 0x34]
call fcn.00404800
xor edx, edx
push 3
mov eax, 0x419120
lea esi, [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], 0
mov word [esp + 0x18], dx
call fcn.00404800
push 0x6e
lea edx, [esp + 0x34]
mov ecx, esi
mov byte [esp + 0xec], 0x19
call fcn.00401cd0
add esp, 4
cmp dword [esp + 0x28], edi
jb 0x40275a
mov eax, dword [esp + 0x14]
push eax
call fcn.00407029
add esp, 4
cmp dword [esp + 0x98], edi
jb 0x402773
mov ecx, dword [esp + 0x84]
push ecx
call fcn.00407029
add esp, 4
xor esi, esi
xor edx, edx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x94], esi
mov word [esp + 0x84], dx
cmp dword [esp + 0xb4], edi
jb 0x4027a6
mov eax, dword [esp + 0xa0]
push eax
call fcn.00407029
add esp, 4
xor ecx, ecx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb0], esi
mov word [esp + 0xa0], cx
cmp dword [esp + 0x7c], edi
jb 0x4027d1
mov edx, dword [esp + 0x68]
push edx
call fcn.00407029
add esp, 4
xor eax, eax
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], esi
mov word [esp + 0x68], ax
cmp dword [esp + 0x60], edi
jb 0x4027f3
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.00407029
add esp, 4
xor edx, edx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], esi
mov word [esp + 0x4c], dx
cmp dword [esp + 0x44], edi
jb 0x402815
mov eax, dword [esp + 0x30]
push eax
call fcn.00407029
add esp, 4
mov ecx, dword [esp + 0xe0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc8]
xor ecx, esp
call fcn.00405f63
mov esp, ebp
pop ebp
ret