Function at 0x4072b0
Capabilities:
Create directory
Set current directory

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x38c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x40], 0
lea eax, [ebp - 0x145]
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004164a0
lea ebx, [ebp - 0x24a]
mov dword [esp], ebx
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004164a0
lea eax, [ebp - 0x34f]
mov dword [esp], eax
mov dword [esp + 8], 0x105
mov dword [esp + 4], 0
call fcn.004164a0
mov dword [ebp - 0x354], 0
mov dword [ebp - 0x358], 0
mov dword [ebp - 0x35c], 0
mov dword [ebp - 0x360], 0
mov dword [ebp - 0x364], 0
mov word [ebp - 0x368], 0
mov dword [ebp - 0x36c], 0
mov dword [ebp - 0x370], 0
mov dword [ebp - 0x374], 1
mov dword [ebp - 0x378], 1
call fcn.00403a80
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x37c], 0x6d45b2e1
lea esi, [ebp - 0x364]
lea edi, [ebp - 0x370]
jmp 0x4073d0
cmp dword [ebp - 0x28], 0
setne byte [ebp - 0xd]
mov dword [ebp - 0x37c], 0xbb99186f
mov eax, dword [ebp - 0x37c]
cmp eax, 0x94775be5
jg 0x4073f0
cmp eax, 0x80fc2ae7
jne 0x4073d0
jmp 0x407c9f
cmp eax, 0x9a23222e
jg 0x407400
cmp eax, 0x94775be6
jne 0x4073d0
jmp 0x4073be
cmp eax, 0x9be215f8
jg 0x40741a
cmp eax, 0x9a23222f
jne 0x4073d0
mov dword [ebp - 0x37c], 0x417cfd21
jmp 0x4073d0
cmp eax, 0x7d001b25
jg 0x407493
cmp eax, 0x7c5e8430
jg 0x4074e0
cmp eax, 0x756c9471
jg 0x4074fa
cmp eax, 0x743d46c9
jg 0x407514
cmp eax, 0x6f942ef1
jg 0x40752e
cmp eax, 0x6e794b11
jg 0x407560
cmp eax, 0x6d45b2e0
jg 0x40759f
cmp eax, 0x572bc886
jg 0x4075c5
cmp eax, 0x9c1c53ab
jg 0x4075df
cmp eax, 0x9be215f9
jne 0x4073d0
mov dword [ebp - 0x37c], 0x3f2a1bcb
jmp 0x4073d0
cmp eax, 0x7d001b26
jne 0x4073d0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, dword [eax + 0x10]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.0040b6f0
mov dword [0x4cad40], eax
mov ecx, 0x103b27b9
test eax, eax
je 0x4074d5
mov ecx, 0x2ab85fe3
mov dword [ebp - 0x37c], ecx
jmp 0x4073d0
cmp eax, 0x7c5e8431
jne 0x4073d0
mov dword [ebp - 0x37c], 0x94775be6
jmp 0x4073d0
cmp eax, 0x756c9472
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0x743d46ca
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0x6f942ef2
jne 0x4073d0
mov dword [ebp - 0x378], 0
mov ecx, dword [ebp - 0x1c]
mov eax, 0xbd2dbe12
cmp dword [ecx], 0
je 0x407555
mov eax, 0xfae47db4
mov dword [ebp - 0x37c], eax
jmp 0x4073d0
cmp eax, 0x6e794b12
jne 0x4073d0
mov eax, dword [ebp - 0x40]
dec eax
mov ecx, dword [ebp - 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0
call fcn.00415de7
test eax, eax
mov eax, 0x37c28b94
jne 0x407594
mov eax, 0xcbd7a79d
mov dword [ebp - 0x37c], eax
jmp 0x4073d0
cmp eax, 0x6d45b2e1
jne 0x4073d0
mov eax, 0x756c9472
cmp dword [ebp - 0x14], 0
je 0x4075ba
mov eax, 0xd8b1dfe9
mov dword [ebp - 0x37c], eax
jmp 0x4073d0
cmp eax, 0x572bc887
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0xa1feb42a
jg 0x407600
cmp eax, 0x9c1c53ac
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0xac943407
jg 0x40762e
cmp eax, 0xa1feb42b
jne 0x4073d0
mov al, byte [ebp - 0xe]
test al, al
mov eax, 0x743d46ca
jne 0x407623
mov eax, 0x6f942ef2
mov dword [ebp - 0x37c], eax
jmp 0x4073d0
cmp eax, 0xafe58455
jg 0x40764f
cmp eax, 0xac943408
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0xb76ab6d0
jg 0x40767b
cmp eax, 0xafe58456
jne 0x4073d0
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
call fcn.004169ab
mov dword [ebp - 0x37c], 0x9be215f9
jmp 0x4073d0
cmp eax, 0xbb99186e
jg 0x40769c
cmp eax, 0xb76ab6d1
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0xbd2dbe11
jg 0x4076ce
cmp eax, 0xbb99186f
jne 0x4073d0
mov edx, esi
mov al, byte [ebp - 0xd]
test al, al
mov eax, 0xafe58456
jne 0x4076c1
mov eax, 0x9be215f9
mov dword [ebp - 0x37c], eax
mov esi, edx
jmp 0x4073d0
cmp eax, 0xc00aa9d4
jg 0x4076ef
cmp eax, 0xbd2dbe12
jne 0x4073d0
mov dword [ebp - 0x37c], 0x1ccc1763
jmp 0x4073d0
cmp eax, 0xcbd7a79c
jg 0x40771b
cmp eax, 0xc00aa9d5
jne 0x4073d0
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
call fcn.004169ab
mov dword [ebp - 0x37c], 0x9a23222f
jmp 0x4073d0
mov edx, esi
cmp eax, 0xd106d84c
jg 0x407740
cmp eax, 0xcbd7a79d
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0xde59b1b6
jmp 0x4073d0
cmp eax, 0xd8b1dfe8
jg 0x407763
cmp eax, 0xd106d84d
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0xddb97f09
jg 0x4078e8
cmp eax, 0xd8b1dfe9
mov esi, edx
jne 0x4073d0
mov eax, dword [0x4b70e8]
movzx eax, byte [eax]
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x4b70e8]
movzx eax, byte [eax + ecx + 1]
mov dword [ebp - 0x30], eax
mov ecx, dword [0x4b70e8]
mov edx, dword [ebp - 0x2c]
lea esi, [ecx + edx + 2]
mov dword [ebp - 0x380], esi
inc ecx
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x380]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
lea eax, [ebp - 0x364]
mov dword [esp], eax
call fcn.00402680
mov dword [esp], ebx
mov dword [esp + 4], 0x105
call fcn.00403c50
lea esi, [ebp - 0x145]
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], 0x105
call fcn.004050b0
mov dword [esp], esi
call fcn.00404430
mov dword [ebp - 0x3c], eax
mov eax, dword [0x4b70ec]
movzx eax, byte [eax]
mov dword [ebp - 0x34], eax
mov ecx, dword [0x4b70ec]
movzx eax, byte [eax + ecx + 1]
mov dword [ebp - 0x38], eax
mov ecx, dword [0x4b70ec]
mov edx, dword [ebp - 0x34]
lea esi, [ecx + edx + 2]
mov dword [ebp - 0x380], esi
inc ecx
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x380]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.00402680
mov eax, dword [ebp - 0x3c]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x145]
mov dword [esp + 8], eax
lea eax, [ebp - 0x34f]
mov dword [esp], eax
mov dword [esp + 4], 0x105
call fcn.00403ed0
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x3c]
mov edx, 0x105
sub edx, ecx
lea ecx, [ebp + ecx - 0x34f]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x364]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.00403ed0
mov esi, dword [ebp - 0x34]
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.004030d0
mov dword [ebp - 0x24], eax
mov ecx, 0xd106d84d
test eax, eax
je 0x4078d5
mov ecx, 0xe3ec8c74
mov dword [ebp - 0x37c], ecx
lea edx, [ebp - 0x364]
mov esi, edx
jmp 0x4073d0
cmp eax, 0xde59b1b5
jg 0x40790b
cmp eax, 0xddb97f0a
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0xf35e2317
jmp 0x4073d0
cmp eax, 0xe3ec8c73
jg 0x407946
cmp eax, 0xde59b1b6
mov esi, edx
jne 0x4073d0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00406bf0
test eax, eax
sets byte [ebp - 0xe]
mov dword [ebp - 0x37c], 0xa1feb42b
jmp 0x4073d0
cmp eax, 0xf35e2316
jg 0x40798d
cmp eax, 0xe3ec8c74
mov esi, edx
jne 0x4073d0
lea eax, [ebp - 0x34f]
mov dword [esp], eax
mov dword [esp + 4], 0
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
sub esp, 8
test eax, eax
mov eax, 0xddb97f0a
je 0x407982
mov eax, 0x12ed9c47
mov dword [ebp - 0x37c], eax
jmp 0x4073d0
cmp eax, 0xf941aa60
jg 0x4079b0
cmp eax, 0xf35e2317
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0x572bc887
jmp 0x4073d0
cmp eax, 0xfae47db3
jg 0x4079de
cmp eax, 0xf941aa61
mov esi, edx
jne 0x4073d0
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
call fcn.004169ab
mov dword [ebp - 0x37c], 0xc00aa9d5
jmp 0x4073d0
cmp eax, 0x392bf70
jg 0x407a10
cmp eax, 0xfae47db4
mov esi, edx
jne 0x4073d0
mov edx, esi
mov ecx, dword [ebp - 0x1c]
mov eax, 0xbd2dbe12
cmp dword [ecx + 4], 0
je 0x4076c1
mov eax, 0x7d001b26
jmp 0x4076c1
cmp eax, 0x5194911
jg 0x407a33
cmp eax, 0x392bf71
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0x80fc2ae7
jmp 0x4073d0
cmp eax, 0xf69064b
jg 0x407a5d
cmp eax, 0x5194912
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x37c], 0x3f2a1bcb
jmp 0x4073d0
cmp eax, 0x103b27b8
jg 0x407a92
cmp eax, 0xf69064c
mov esi, edx
jne 0x4073d0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00406bf0
mov dword [ebp - 0x37c], 0xde59b1b6
jmp 0x4073d0
cmp eax, 0x12ed9c46
jg 0x407ab5
cmp eax, 0x103b27b9
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0x158397dc
jmp 0x4073d0
cmp eax, 0x158397db
jg 0x407b13
cmp eax, 0x12ed9c47
mov esi, edx
jne 0x4073d0
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + 0x14]
xor edx, edx
sub edx, dword [eax + 0x10]
sub ecx, edx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x374], 0
call fcn.0040da10
lea eax, [ebp - 0x145]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
sub esp, 4
test eax, eax
mov eax, 0x9c1c53ac
je 0x407b08
mov eax, 0x6e794b12
mov dword [ebp - 0x37c], eax
jmp 0x4078db
cmp eax, 0x1ccc1762
jg 0x407b36
cmp eax, 0x158397dc
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0xb76ab6d1
jmp 0x4073d0
cmp eax, 0x1d155b4c
jg 0x407b59
cmp eax, 0x1ccc1763
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0xac943408
jmp 0x4073d0
cmp eax, 0x2ab85fe2
jg 0x407b7c
cmp eax, 0x1d155b4d
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0xc00aa9d5
jmp 0x4073d0
cmp eax, 0x37c28b93
jg 0x407bb9
cmp eax, 0x2ab85fe3
mov esi, edx
jne 0x4073d0
mov eax, dword [0x4cad44]
mov dword [esp], eax
call dword [0x4cad40]
mov eax, 0x1d155b4d
cmp dword [ebp - 0x28], 0
jne 0x407bae
mov eax, 0x417cfd21
mov dword [ebp - 0x37c], eax
jmp 0x4073d0
cmp eax, 0x3e01f0b3
jg 0x407bdc
cmp eax, 0x37c28b94
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0x7c5e8431
jmp 0x4073d0
cmp eax, 0x3f2a1bca
jg 0x407bff
cmp eax, 0x3e01f0b4
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0x158397dc
jmp 0x4073d0
cmp eax, 0x40980442
jg 0x407c29
cmp eax, 0x3f2a1bcb
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x37c], 0x392bf71
jmp 0x4073d0
cmp eax, 0x417cfd20
jg 0x407c4c
cmp eax, 0x40980443
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0xf35e2317
jmp 0x4073d0
cmp eax, 0x417cfd21
je 0x407c6b
cmp eax, 0x43a5cacc
jne 0x407c83
mov dword [ebp - 0x37c], 0x94775be6
mov esi, edx
jmp 0x4073d0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x37c], 0x80fc2ae7
mov esi, edx
jmp 0x4073d0
cmp eax, 0x43c35d72
mov esi, edx
jne 0x4073d0
mov dword [ebp - 0x37c], 0x1ccc1763
jmp 0x4073d0
mov eax, dword [ebp - 0x18]
add esp, 0x38c
pop esi
pop edi
pop ebx
pop ebp
ret