Function at 0x435a2e
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
push ebx
push esi
push edi
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x44]
push 3
mov dword [ebp - 0x28], edx
call fcn.00421789
mov dword [ebp - 0xc], 0xaeef20fe
xor ebx, ebx
mov dword [ebp - 0x24], 7
mov dword [ebp - 8], ebx
jmp 0x435a6c
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x44]
mov dword [eax + ecx*4], 0x7571177e
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jl 0x435a5c
xor edi, edi
mov dword [ebp - 8], ebx
inc edi
jmp 0x435a88
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x20], 0xa60d4e02
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jl 0x435a7a
push 2
mov dword [ebp - 0xc], ebx
pop esi
jmp 0x435bc9
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 0x10], 0xfffffff8
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 8], ebx
jne 0x435ace
mov eax, dword [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 8]
cmp eax, 0xe
setge cl
xor eax, eax
cmp ecx, 0x5196ee4e
setl al
sub eax, dword [ebp - 0xc]
mov eax, ebx
je 0x435ad0
mov eax, edi
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 8], edi
jl 0x435af5
cmp dword [ebp - 0x10], ebx
jne 0x435bd2
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x44]
mov dword [eax + edx*4], ecx
jmp 0x435bc6
mov dword [ebp - 0x10], ebx
jmp 0x435b04
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x60], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x435afa
mov dword [ebp - 8], ebx
cmp dword [ebp - 8], 0xe
jge 0x435bbf
mov dword [ebp - 0x14], 0xfed6
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], 0x763c6daa
mov byte [ebp - 1], bl
cmp byte [ebp - 1], 0
je 0x435b39
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
mov eax, dword [ebp - 0x54]
xor edx, edx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], 0xc4b6
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setle dl
xor ecx, ecx
add edx, 0x8301
cmp edx, eax
mov edx, 0x2f0f
push 0
setge cl
imul ecx, dword [ebp - 8]
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x18]
cmp eax, edx
mov eax, dword [ebp - 0x58]
setg cl
xor ebx, ebx
sub ecx, 0x6b44b761
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setg bl
xor edx, edx
cmp eax, ebx
mov eax, dword [ebp - 0x14]
pop ebx
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x24], ecx
inc dword [ebp - 8]
cmp dword [ebp - 8], 0xe
jl 0x435b17
mov dword [ebp - 0x20], 0xfffffff7
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jle 0x435a98
lea ecx, [ebp - 0x44]
call fcn.00421a31
push esi
lea ecx, [ebp - 0x50]
call fcn.00421789
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x10], ebx
jmp 0x435bfb
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x50]
mov dword [eax + ecx*4], 0xf0ea75c9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x435beb
mov dword [ebp - 0x10], edi
cmp dword [ebp - 0x10], ebx
jl 0x435c2b
mov byte [ebp - 1], bl
cmp byte [ebp - 1], 0
je 0x435c23
push ebx
push 0x1a36
push ebx
push 0x1d80
call dword [sym.imp.GDI32.dll_GetTextExtentPointA]
mov eax, dword [ebp - 0x10]
dec dword [ebp - 0x10]
jns 0x435c08
lea ecx, [ebp - 0x50]
call fcn.00421a31
push 0xfffffffffffffff8
pop eax
mov dword [ebp - 8], eax
push 0xfffffffffffffffd
pop esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x14], 0x941ce3cb
mov dword [ebp - 0x18], 0xc8b166c1
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 8], 7
jmp 0x435c74
mov byte [ebp - 1], bl
cmp byte [ebp - 1], 0
je 0x435c71
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
inc dword [ebp - 8]
cmp dword [ebp - 8], 0x1b
jg 0x435c60
cmp dword [ebp - 0x1c], ebx
je 0x435c82
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
je 0x435c93
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp eax, 0x32e2
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 8], ecx
mov ecx, ebx
cmp dword [ebp - 8], ebx
je 0x435cbf
mov ecx, edi
mov eax, dword [ebp - 0x1c]
add eax, ecx
imul eax, eax, 0xbf5e
push 5
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 8], edi
mov dword [ebp - 0x14], 0xa4575f7f
mov dword [ebp - 0x24], 0x5bdf607d
mov dword [ebp - 0x10], 0xd85aa7f7
mov dword [ebp - 0x24], esi
mov dword [ebp - 8], ebx
pop esi
jmp 0x435e79
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x10], 0x426232c2
mov dword [ebp - 0x18], 0x9d45eb44
cmp dword [ebp - 8], 0xc5b641b4
je 0x435d59
mov eax, dword [ebp - 0xc]
mov edx, edi
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0xc]
jl 0x435d5b
mov edx, ebx
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp eax, edx
setg cl
cmp edi, ecx
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, edi
mov eax, dword [ebp - 8]
setg cl
xor ebx, ebx
sub ecx, 0x38be
cmp ecx, eax
setle bl
xor edx, edx
imul ebx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
cmp ebx, eax
mov eax, dword [ebp - 0x14]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
cmp ecx, dword [ebp - 8]
jg 0x435da2
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x18]
imul eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
xor ebx, ebx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
add eax, 0xfffffffd
add eax, ecx
je 0x435df0
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x435e76
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x435e76
mov dword [ebp - 0x24], 0xe7029bb2
mov dword [ebp - 0x1c], 0x3e505ce5
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x1c], ebx
jne 0x435e18
mov eax, dword [ebp - 0x18]
mov edx, ebx
add eax, dword [ebp - 0xc]
imul eax, eax, 0xedb9
test eax, eax
je 0x435e1a
mov edx, edi
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setne cl
xor edx, edx
add ecx, esi
cmp ecx, eax
setg dl
sub edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setle cl
xor eax, eax
cmp ecx, 0xfffffff6
setg al
sub eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 8], ebx
jne 0x435e83
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xffffffec
je 0x435cf8
mov dword [ebp - 0x10], 7
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x18], 0x4392
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x10], 0xffffffe2
jmp 0x435f97
mov dword [ebp - 0xc], 3
lea ecx, [ebp - 0x38]
push edi
call fcn.00421789
mov dword [ebp - 0x14], ebx
jmp 0x435ecc
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x38]
mov dword [eax + ecx*4], 0xeadd5d0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x435ebc
cmp dword [ebp - 0xc], ebx
jne 0x435ee1
cmp dword [ebp - 0xc], 0x49d585ed
mov esi, ebx
jge 0x435ee3
mov esi, edi
cmp dword [ebp - 0xc], 0x90fc
jg 0x435ef3
mov eax, edi
cmp dword [ebp - 0x10], ebx
jne 0x435ef5
mov eax, ebx
xor edx, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x10]
setne dl
cmp edx, 0xffffffff
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor ecx, ecx
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
cmp esi, edx
setl cl
xor edx, edx
cmp ecx, eax
setle dl
xor ecx, ecx
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x38]
cmp edx, dword [eax]
mov edx, dword [eax]
mov eax, dword [ebp - 0x10]
setle cl
sub eax, ecx
neg eax
sbb eax, eax
inc eax
cmp eax, 0xbd10caad
sbb eax, eax
inc eax
add eax, edx
jne 0x435f55
mov eax, ebx
test edx, edx
je 0x435f57
mov eax, edi
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x38]
cmp dword [eax], ebx
je 0x435f75
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp eax, 0xffffffff
mov edx, edi
mov eax, dword [ebp - 0x38]
setl cl
cmp dword [eax], ecx
jg 0x435f77
mov edx, ebx
mov dword [ebp - 0x1c], edi
mov ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, edx
lea ecx, [ebp - 0x38]
setge al
mov dword [ebp - 0xc], eax
call fcn.00421a31
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xe
jge 0x435ea7
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov eax, dword [esi]
mov eax, dword [ebx]
mov eax, dword [edi]
mov eax, dword [edi]
imul ecx, dword [edi], 0xffff25e7
mov eax, dword [edi]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
add ecx, eax
mov eax, dword [ebx]
cmp ecx, eax
mov eax, dword [ebp + 0x10]
setle dl
xor ecx, ecx
mov eax, dword [eax]
cmp edx, dword [eax]
setl cl
mov dword [ebx], ecx
xor ecx, ecx
mov eax, dword [ebx]
imul eax, dword [esi]
cmp eax, 0xfa48
mov eax, dword [ebp - 0x2c]
setge cl
xor edx, edx
cmp ecx, 7
sete dl
sub edx, dword [edi]
mov eax, dword [eax]
neg edx
pop edi
sbb edx, edx
inc edx
pop esi
mov dword [eax], edx
pop ebx
mov esp, ebp
pop ebp
ret