Function at 0x49d50d
Capabilities:
Create directory
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
mov eax, 0xf112
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
push ebx
xor ebx, ebx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
push esi
mov dword [ebp - 8], ebx
mov esi, ecx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 8], ebx
jmp 0x49d550
cmp byte [ebp - 1], bl
je 0x49d546
push 0x9d2
push ebx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x54]
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
mov byte [ebp - 1], bl
jle 0x49d535
cmp byte [ebp - 1], bl
je 0x49d572
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CloseEnhMetaFile]
push edi
push 0x2671
xor edi, edi
inc edi
push edi
push 0x3b28
push esi
push edi
push 0x6c50
push edi
call fcn.004980ad
add esp, 0x1c
mov dword [ebp - 8], 0x3f4f46db
mov dword [ebp - 0x10], 7
mov dword [ebp - 0xc], 0xefc72fa5
mov dword [ebp - 8], 0xc012777f
push 3
mov dword [ebp - 8], ebx
pop ecx
jmp 0x49d5c3
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x1c], 0xffffffff
inc dword [ebp - 8]
cmp dword [ebp - 8], ecx
jl 0x49d5b5
mov dword [ebp - 8], ebx
jmp 0x49d5db
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x28], 0x7b38eb16
inc dword [ebp - 8]
cmp dword [ebp - 8], ecx
jl 0x49d5cd
mov dword [ebp - 8], ebx
jmp 0x49d5f3
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x34], 0xc5bff904
inc dword [ebp - 8]
cmp dword [ebp - 8], ecx
jl 0x49d5e5
mov dword [ebp - 8], 2
cmp dword [ebp - 8], ebx
jl 0x49d67d
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x10], 0x1ce3cb5a
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x1c]
mov dword [ebp - 0x10], 0xde0980db
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 0x1c], ebx
jne 0x49d62c
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 8]
setg dl
mov eax, dword [ebp + eax*4 - 0x1c]
sub edx, eax
xor eax, eax
cmp edx, edi
setle al
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x1c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x1c]
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x1c], ecx
mov ecx, 0x380ee91b
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10], ecx
dec dword [ebp - 8]
jns 0x49d604
cmp dword [ebp - 0x24], ebx
je 0x49d6f1
mov ecx, dword [ebp - 0xc]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 0x5af849fb
setne al
cmp dword [ebp - 0xc], eax
jne 0x49d6a2
mov eax, edi
cmp dword [ebp - 0x28], ebx
jne 0x49d6a4
mov eax, ebx
cmp eax, 2
mov eax, dword [ebp - 0x14]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setl dl
xor ebx, ebx
test edx, edx
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0xc]
setne bl
xor ecx, ecx
cmp ebx, eax
sete cl
xor eax, eax
cmp ecx, 0x5407
sete al
add eax, dword [ebp - 0x1c]
mov dword [ebp - 8], eax
je 0x49d6e6
xor ebx, ebx
cmp dword [ebp - 0x14], ebx
je 0x49d6e8
mov eax, edi
jmp 0x49d6ea
xor ebx, ebx
mov eax, ebx
cmp eax, dword [ebp - 0x14]
mov eax, edi
jge 0x49d6f3
mov eax, ebx
imul eax, eax, 0xfffffff9
test eax, eax
jne 0x49d701
mov edx, ebx
cmp dword [ebp - 0xc], ebx
je 0x49d703
mov edx, edi
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
push esi
setge cl
xor eax, eax
cmp ecx, 0xfffffff9
setge al
xor ecx, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0xc]
cmp edx, eax
setl cl
mov dword [ebp - 8], ecx
call fcn.00478810
pop ecx
push 6
mov esi, eax
pop eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x10], ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 0x10], ebx
jmp 0x49d765
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x64], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x49d757
mov eax, dword [ebp - 0x44]
xor ecx, ecx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
test eax, eax
mov eax, dword [ebp - 0x3c]
setg cl
imul eax, ecx
test eax, eax
jne 0x49d78c
mov ecx, ebx
cmp dword [ebp - 0x44], ebx
je 0x49d78e
mov ecx, edi
mov dword [ebp - 0xc], ebx
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x10], eax
xor eax, eax
cmp ecx, 0xfffffffd
sete al
xor edx, edx
imul ecx, eax, 0xcf7d
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x3c]
setg dl
sub edx, eax
mov eax, dword [ebp - 0x3c]
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x44]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, 0xde81
jle 0x49d7e0
mov edx, ebx
cmp dword [ebp - 8], ebx
je 0x49d7e2
mov edx, edi
mov eax, dword [ebp - 8]
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x44]
je 0x49d7f4
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], 3
pop edi
cmp dword [ebp - 0xc], ebx
jl 0x49d823
mov byte [ebp - 1], bl
cmp byte [ebp - 1], 0
je 0x49d81e
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
dec dword [ebp - 0xc]
jns 0x49d80d
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret