Function at 0x428760
Capabilities:
Create directory

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x44c968
push eax
mov dword fs:[0], esp
sub esp, 0x24
mov edx, ecx
xor eax, eax
push ebx
push ebp
push esi
push edi
mov ecx, 0x1f
mov edi, 0x4760a0
rep stosd dword es:[edi], eax
mov eax, edx
mov dword [0x4760a0], 0x7c
sub eax, 0
je 0x4287ac
dec eax
jne 0x428c16
mov esi, dword [0x476ef0]
jmp 0x4287b2
mov esi, dword [0x476ef4]
mov eax, dword [esi]
push 0
push 0x11
push 0x4760a0
push 0
push esi
mov dword [esp + 0x38], esi
call dword [eax + 0x64]
test eax, eax
jne 0x428c16
mov eax, dword [0x476efc]
cdq
and edx, 7
add eax, edx
sar eax, 3
imul eax, dword [0x4760a8]
imul eax, dword [0x4760ac]
push eax
call fcn.0042c2ee
mov ebp, dword [0x4760a8]
add esp, 4
mov ebx, eax
test ebp, ebp
mov dword [esp + 0x14], ebx
jbe 0x42888a
mov eax, dword [0x476efc]
mov edi, dword [0x4760ac]
cdq
and edx, 7
mov esi, dword [0x4760c4]
add eax, edx
mov dword [esp + 0x1c], esi
mov ecx, eax
mov eax, dword [0x476efc]
cdq
and edx, 7
mov dword [esp + 0x20], ebp
add eax, edx
lea edx, [ebp - 1]
sar ecx, 3
imul edx, ecx
imul edx, edi
sar eax, 3
mov ebx, ecx
mov ecx, dword [esp + 0x14]
neg eax
imul ebx, edi
imul eax, edi
add edx, ecx
mov ecx, ebx
mov edi, edx
mov ebp, ecx
add edx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
mov ebp, dword [0x4760b0]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
add esi, ebp
dec ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], ecx
jne 0x428853
mov esi, dword [esp + 0x24]
mov ebx, dword [esp + 0x14]
mov ecx, dword [esi]
push 0
push esi
call dword [ecx + 0x80]
cmp dword [0x476efc], 8
je case.0x4288d9.18
mov eax, dword [0x4760a8]
imul eax, dword [0x4760ac]
lea edx, [eax + eax*2]
push edx
call fcn.0042c2ee
mov dword [esp + 0x30], eax
mov esi, eax
mov eax, dword [0x476efc]
add esp, 4
add eax, 0xfffffff1
cmp eax, 0x11
ja case.0x4288d9.18
xor ecx, ecx
mov cl, byte [eax + 0x428c3c]
jmp dword [ecx*4 + 0x428c2c]
mov eax, dword [0x4760a8]
mov ebp, ebx
imul eax, dword [0x4760ac]
test eax, eax
jbe case.0x4288d9.18
mov bl, byte [0x476100]
mov edi, dword [0x4760f8]
mov dword [esp + 0x24], eax
mov edx, dword [0x4760fc]
mov ax, word [ebp]
cmp edx, 0x3e8
mov ecx, edi
jne 0x428933
mov dx, ax
shr ecx, 0xa
shr dx, 0xa
and cl, dl
mov edx, eax
shr edx, 5
shl cl, 3
shl dl, 3
jmp 0x428955
mov bx, ax
shr ecx, 0xb
shr bx, 0xb
and cl, bl
mov ebx, eax
shr edx, 5
shr ebx, 5
and dl, bl
mov bl, byte [0x476100]
shl cl, 3
shl dl, 2
and al, bl
add ebp, 2
shl al, 3
mov byte [esi], al
mov eax, dword [esp + 0x24]
inc esi
mov byte [esi], dl
inc esi
mov byte [esi], cl
inc esi
dec eax
mov dword [esp + 0x24], eax
jne 0x428906
mov ebx, dword [esp + 0x14]
jmp case.0x4288d9.18
mov ecx, dword [0x4760a8]
mov eax, ebx
imul ecx, dword [0x4760ac]
test ecx, ecx
jbe case.0x4288d9.18
mov dl, byte [eax]
inc eax
mov byte [esi], dl
inc esi
mov dl, byte [eax]
inc eax
mov byte [esi], dl
inc esi
mov dl, byte [eax]
inc eax
mov byte [esi], dl
inc esi
dec ecx
jne 0x42898a
jmp case.0x4288d9.18
mov ecx, dword [0x4760a8]
mov eax, ebx
imul ecx, dword [0x4760ac]
test ecx, ecx
jbe case.0x4288d9.18
mov dl, byte [eax]
inc eax
mov byte [esi], dl
inc esi
mov dl, byte [eax]
inc eax
mov byte [esi], dl
inc esi
mov dl, byte [eax]
add eax, 2
mov byte [esi], dl
inc esi
dec ecx
jne 0x4289b4
mov eax, dword [0x475794]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov ecx, dword [0x45fc04]
mov dword [esp + 0x10], ecx
push 0x47590c
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], 0
call fcn.0043e706
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x40], 1
call fcn.0043e785
lea ecx, [esp + 0x24]
mov byte [esp + 0x3c], 0
call fcn.0043e698
mov edi, 0x47590c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp byte [ecx + 0x475908], 0x2e
jne 0x428a64
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x10]
mov eax, dword [edx - 8]
add eax, 0xfffffffc
push eax
lea eax, [esp + 0x28]
push eax
call fcn.0043bc24
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x40], 2
call fcn.0043e785
lea ecx, [esp + 0x24]
mov byte [esp + 0x3c], 0
call fcn.0043e698
mov cl, byte [0x475d6b]
push 1
add cl, 0x30
push ecx
lea ecx, [esp + 0x30]
call fcn.0043babb
mov esi, eax
push 0x45c8d4
lea edx, [esp + 0x18]
push 0x475794
push edx
mov byte [esp + 0x48], 3
call fcn.0043e8e1
lea ecx, [esp + 0x10]
lea edx, [esp + 0x1c]
push ecx
push eax
push edx
mov byte [esp + 0x48], 4
call fcn.0043e87b
push 0x45c8d0
push eax
lea eax, [esp + 0x28]
mov byte [esp + 0x44], 5
push eax
call fcn.0043e8e1
push esi
lea ecx, [esp + 0x28]
push eax
push ecx
mov byte [esp + 0x48], 6
call fcn.0043e87b
push str..bmp
lea edx, [esp + 0x1c]
push eax
push edx
mov byte [esp + 0x48], 7
call fcn.0043e8e1
lea ecx, [esp + 0x24]
mov byte [esp + 0x3c], 0xd
call fcn.0043e698
lea ecx, [esp + 0x20]
mov byte [esp + 0x3c], 0xc
call fcn.0043e698
lea ecx, [esp + 0x1c]
mov byte [esp + 0x3c], 0xb
call fcn.0043e698
lea ecx, [esp + 0x14]
mov byte [esp + 0x3c], 0xa
call fcn.0043e698
lea ecx, [esp + 0x28]
mov byte [esp + 0x3c], 9
call fcn.0043e698
cmp dword [0x476efc], 8
jne 0x428b9f
xor eax, eax
mov cl, byte [eax + 0x4769c2]
mov dl, byte [eax + 0x4769c1]
mov byte [eax + 0x47611e], cl
mov cl, byte [eax + 0x4769c0]
mov byte [eax + 0x47611d], dl
mov byte [eax + 0x47611c], cl
mov byte [eax + 0x47611f], 0
add eax, 4
cmp eax, 0x400
jl 0x428b35
mov edx, dword [0x4760a8]
push 0x47611c
mov esi, dword [0x4760ac]
push 0x100
push 8
push edx
push ecx
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x40], esp
push eax
call fcn.0043e40d
mov ecx, ebx
mov edx, esi
call fcn.00428c50
jmp 0x428bd3
mov ecx, dword [0x4760a8]
mov edi, dword [0x4760ac]
push ecx
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
call fcn.0043e40d
mov edx, edi
mov esi, dword [esp + 0x34]
mov ecx, esi
call fcn.00428ee0
push esi
call fcn.0042bf0e
add esp, 4
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push str.SCREENSHOT_SAVED
call fcn.0043e706
mov ecx, 0x78
call fcn.0041ef30
push ebx
call fcn.0042bf0e
add esp, 4
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], 0
call fcn.0043e698
lea ecx, [esp + 0x10]
mov dword [esp + 0x3c], 0xffffffff
call fcn.0043e698
mov ecx, dword [esp + 0x34]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x30
ret