Function at 0x44e7e0
Capabilities:
Create process on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 8
add esp, 0xfffff004
push eax
dec eax
jne 0x44e7e9
mov eax, dword [ebp - 4]
add esp, 0xffffff3c
push ebx
push esi
push edi
mov esi, ecx
mov byte [ebp - 0x22a], dl
mov byte [ebp - 0x229], al
mov edi, 0x4c3188
mov eax, 0x4b0f1c
call fcn.004a0204
test esi, esi
jne 0x44e865
mov eax, 0x4cfe48
call fcn.004608e0
test eax, eax
jne 0x44e865
push 0x30
mov eax, 0x65
call fcn.00413388
push eax
mov eax, 0x14c
call fcn.00413388
push eax
push dword [0x4cfe34]
call sub.USER32.DLL_MessageBoxA
mov edx, dword [ebp - 0x228]
mov dword fs:[0], edx
mov eax, edx
jmp 0x44f13b
xor eax, eax
call fcn.0044b600
mov dword [0x4d3138], 0
mov dword [0x4d313c], 0
mov dword [0x4d3130], 0
mov dword [0x4d3134], 0
call fcn.0048aa5c
mov dword [ebp - 0x230], eax
mov word [ebp - 0x218], 8
lea eax, [ebp - 0x10c]
call fcn.0046318c
add dword [ebp - 0x20c], 6
mov word [ebp - 0x218], 0x14
mov word [ebp - 0x218], 0x20
lea eax, [ebp - 0x204]
call fcn.00410634
add dword [ebp - 0x20c], 4
mov word [ebp - 0x218], 0x14
test esi, esi
sete dl
and edx, 1
mov byte [ebp - 0x231], dl
mov word [ebp - 0x218], 0x2c
cmp byte [ebp - 0x231], 0
je 0x44e94f
lea esi, [ebp - 0x204]
mov eax, 0x4cfe48
xor ecx, ecx
xor edx, edx
call fcn.004607bc
jmp 0x44e930
lea ecx, [ebp - 0xa78]
lea edx, [ebp - 0xe78]
mov eax, esi
call fcn.004107c0
lea edx, [ebp - 0xe78]
mov eax, 0x4cfe48
xor ecx, ecx
call fcn.004607bc
test al, al
je 0x44e94f
cmp dword [0x4d27e4], 0
je 0x44e91d
mov word [ebp - 0x218], 0x14
jmp 0x44e9d3
call fcn.0048aa5c
mov dword [ebp - 0x238], eax
mov word [ebp - 0x218], 0x14
test esi, esi
je 0x44e9f5
cmp dword [ebp + 0x14], 0
je 0x44e9f5
xor ebx, ebx
jmp 0x44e9fa
mov ebx, 1
push 1
push ebx
push 0
lea eax, [ebp - 0x239]
push 1
push eax
mov eax, esi
lea ecx, [ebp - 0x10c]
mov edx, 2
call fcn.0046794c
xor edx, edx
mov dl, al
cmp edx, 1
sbb ecx, ecx
neg ecx
mov ebx, ecx
test bl, bl
jne 0x44ea9c
cmp dword [ebp - 8], 0
jne 0x44ea9c
cmp dword [esi + 0x30], 1
jne 0x44ea9c
mov eax, esi
call fcn.0041099c
lea ecx, [ebp - 0x244]
lea edx, [ebp - 0x240]
mov eax, esi
call fcn.00410928
test al, al
je 0x44ea9c
mov edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x240]
call fcn.0040ad8c
call fcn.0040aa90
test al, al
jne 0x44ea9c
lea edx, [ebp - 0x10c]
push edx
push 0
push 0
push 0
push 0
xor ecx, ecx
mov edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x240]
call fcn.00467b40
lea eax, [ebp - 0x10c]
call fcn.00463538
mov esi, dword [ebp - 8]
test bl, bl
jne 0x44eab5
test esi, esi
jne 0x44eb4e
cmp dword [ebp + 0x10], 0
jne 0x44eb4e
test bl, bl
jne 0x44eae9
call fcn.0048aa5c
cmp eax, dword [ebp - 0x238]
jne 0x44eae9
push 0x30
mov eax, 0x35f
call fcn.00413388
push eax
mov eax, 0x35e
call fcn.00413388
push eax
push dword [0x4cfe34]
call sub.USER32.DLL_MessageBoxA
mov eax, 0x4d03b8
xor edx, edx
call fcn.0048037c
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x204]
mov edx, 2
call fcn.0041070c
dec dword [ebp - 0x20c]
dec dword [ebp - 0x20c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.0043ed58
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x10c]
mov edx, 2
call fcn.0041070c
mov ecx, dword [ebp - 0x228]
mov dword fs:[0], ecx
jmp 0x44f13b
mov al, byte [ebp - 0x22a]
mov byte [edi + 0x29ce], al
xor edx, edx
mov dword [edi + 0x2964], edx
xor ecx, ecx
mov dword [edi + 0x2990], ecx
mov dword [edi + 0x2e90], 1
call fcn.0044e5c4
cmp byte [ebp - 0x22a], 0
mov byte [0x4d3248], 0
jne 0x44eccb
mov byte [ebp - 0x245], 0
cmp esi, 1
jne 0x44ec13
lea ecx, [ebp - 0x1aa8]
lea eax, [ebp - 0x10c]
xor edx, edx
call fcn.00463494
lea ebx, [ebp - 0x1aa8]
push 1
push 0
lea ecx, [ebp - 0x3308]
lea eax, [ebp - 0x10c]
xor edx, edx
call fcn.00463494
lea eax, [ebp - 0x3308]
lea ecx, [ebp - 0x26d8]
add eax, 0x400
xor edx, edx
push eax
lea eax, [ebp - 0x10c]
call fcn.00463494
lea edx, [ebp - 0x26d8]
mov eax, 0x4d0b94
pop ecx
call fcn.00457674
mov eax, 0x4d0b94
call fcn.00458d90
test eax, eax
setne dl
and edx, 1
mov byte [ebp - 0x245], dl
jmp 0x44ec31
lea ecx, [ebp - 0x3708]
push ecx
push 0x400
call sub.KERNEL32.DLL_GetCurrentDirectoryA
lea eax, [ebp - 0x3708]
call fcn.0040c4d0
mov ebx, eax
cmp byte [ebx], 0
jne 0x44ec3b
mov ebx, 0x4b0e64
mov al, byte [ebp - 0x229]
push eax
mov eax, 0x4d3248
mov dl, byte [ebp - 0x245]
push edx
mov edx, 0x4b0d04
mov cl, byte [ebp + 0xc]
push ecx
mov ecx, ebx
call fcn.0044f144
cmp byte [ebp - 0x229], 0
je 0x44eccb
mov eax, esi
call fcn.0044ce08
test al, al
jne 0x44eccb
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x204]
mov edx, 2
call fcn.0041070c
dec dword [ebp - 0x20c]
dec dword [ebp - 0x20c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.0043ed58
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x10c]
mov edx, 2
call fcn.0041070c
mov ecx, dword [ebp - 0x228]
mov dword fs:[0], ecx
jmp 0x44f13b
cmp dword [ebp + 0x10], 0
je 0x44ece1
push 0x4d3248
push dword [ebp + 0x10]
call fcn.0049fdd4
add esp, 8
test esi, esi
jne 0x44ed3e
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x204]
mov edx, 2
call fcn.0041070c
dec dword [ebp - 0x20c]
dec dword [ebp - 0x20c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.0043ed58
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x10c]
mov edx, 2
call fcn.0041070c
mov ecx, dword [ebp - 0x228]
mov dword fs:[0], ecx
jmp 0x44f13b
mov dword [0x4d312c], esi
cmp dword [0x4d27d8], 0
jne 0x44ed57
mov dword [0x4d27d8], 2
xor ebx, ebx
jmp 0x44efb4
mov eax, dword [edi + 0x530c]
call fcn.00410788
mov eax, dword [edi + 0x5300]
call fcn.00410788
mov byte [ebp - 0x3b08], 0
cmp dword [ebp + 0x14], 0
je 0x44ed94
lea edx, [ebp - 0x3b08]
mov ecx, 0x400
mov eax, dword [ebp + 0x14]
call fcn.00410850
cmp byte [ebp - 0x3b08], 0
je 0x44eda5
lea edx, [ebp - 0x3b08]
jmp 0x44edaa
mov edx, 0x4b0d05
mov eax, dword [edi + 0x5300]
call fcn.004107b8
lea ecx, [ebp - 0x4738]
lea eax, [ebp - 0x10c]
mov edx, ebx
call fcn.00463494
lea eax, [ebp - 0x4738]
lea edx, [edi + 0x4700]
call fcn.0040adf8
lea ecx, [ebp - 0x5368]
lea eax, [ebp - 0x10c]
mov edx, ebx
call fcn.00463494
lea eax, [ebp - 0x5368]
lea edx, [edi + 0x4b00]
add eax, 0x400
call fcn.0040ae48
mov byte [ebp - 0x5768], 0
mov word [ebp - 0x5f68], 0
cmp byte [0x4d3248], 0
je 0x44ee96
cmp dword [edi + 0x28c8], 5
je 0x44ee96
push 0x4d3248
lea ecx, [ebp - 0x6368]
push ecx
call fcn.0049fdd4
add esp, 8
lea edx, [ebp - 0x5f68]
lea eax, [ebp - 0x5768]
mov ecx, 0x400
call fcn.00466f28
lea eax, [ebp - 0x6368]
xor ecx, ecx
xor edx, edx
call fcn.0040a4a0
lea eax, [ebp - 0x6368]
push eax
call fcn.004a186c
pop ecx
inc eax
jne 0x44ee96
lea edx, [ebp - 0x6368]
mov eax, 0x1f7
push edx
call fcn.00413388
push eax
call fcn.0048a820
add esp, 8
mov eax, 0x4bb2e4
call fcn.0042ed78
jmp 0x44efc5
cmp byte [edi + 0x29ce], 0
mov al, 0x54
jne 0x44eea4
add eax, 4
lea edx, [edi + 0x4700]
call fcn.004786f0
push 1
push 0
lea ecx, [edi + 0x4b00]
lea edx, [edi + 0x4700]
mov eax, 0x4d0b94
call fcn.00457674
mov ecx, dword [0x4d0d9c]
mov dword [edi + 0x32b0], ecx
mov byte [edi + 0x3ac0], 1
cmp byte [edi + 0x29ce], 0
je 0x44ef0f
mov eax, 0x4d0b94
call fcn.0045536c
test al, 1
jne 0x44ef0f
mov eax, 0x3ac
call fcn.00413388
push eax
lea edx, [edi + 0x4700]
push edx
call fcn.00480d50
add esp, 8
jmp 0x44ef21
mov eax, 0x4d0b94
xor ecx, ecx
mov dl, byte [ebp - 0x239]
call fcn.00454664
mov byte [edi + 0x3ac0], 0
cmp byte [ebp - 0x5768], 0
jne 0x44ef3b
cmp word [ebp - 0x5f68], 0
je 0x44ef4c
lea edx, [ebp - 0x5f68]
lea eax, [ebp - 0x5768]
call fcn.00466ee0
lea ecx, [ebx + 1]
push ecx
push dword [ebp - 8]
mov eax, 0x35d
call fcn.00413388
push eax
lea edx, [ebp - 0x6468]
push edx
call fcn.004a2e18
add esp, 0x10
lea edx, [ebp - 0x6468]
mov eax, 0x4d03b8
call fcn.0048037c
lea ecx, [ebp - 0x7098]
lea eax, [ebp - 0x10c]
mov edx, ebx
call fcn.00463494
lea ecx, [ebp - 0x7098]
mov eax, dword [ecx + 0xc00]
mov edx, dword [ecx + 0xc04]
add dword [0x4d3130], eax
adc dword [0x4d3134], edx
call fcn.00478514
inc ebx
cmp esi, ebx
jle 0x44efc5
cmp dword [0x4d27e4], 0
je 0x44ed5e
cmp dword [0x4d27d8], 2
jne 0x44efd5
xor eax, eax
mov dword [0x4d27d8], eax
cmp byte [ebp + 8], 0
je 0x44efe6
push dword [0x4cfe40]
call sub.USER32.DLL_DestroyWindow
cmp byte [edi + 0x2e96], 0
je 0x44f006
cmp dword [0x4d27e4], 0
jne 0x44f006
cmp dword [0x4d27e8], 0
jne 0x44f006
call fcn.004672e4
mov eax, 0x4d03b8
xor edx, edx
call fcn.0048037c
mov byte [0x4d03e4], 0
mov eax, 0x4d03b8
call fcn.00480444
cmp byte [ebp - 0x22a], 0
je 0x44f06f
cmp dword [0x4d27e8], 0
jne 0x44f0e7
call fcn.0048aa5c
cmp eax, dword [ebp - 0x230]
jne 0x44f0e7
push 0x40
mov eax, 0x3a7
call fcn.00413388
push eax
mov eax, 0x3a8
call fcn.00413388
push eax
push dword [0x4cfe34]
call sub.USER32.DLL_MessageBoxA
jmp 0x44f0e7
cmp byte [ebp - 0x231], 0
je 0x44f0e7
cmp dword [0x4d27e8], 0
jne 0x44f0a4
cmp byte [0x4d364d], 0
je 0x44f0a4
push 1
push 0x4b0d04
push 0
push 0x4d3248
push 0x4b0d1a
push 0
call sub.SHELL32.DLL_ShellExecuteA
mov byte [ebp - 0x7498], 0
lea edx, [ebp - 0x80c8]
mov eax, 0x4cfe48
call fcn.00460994
test al, al
je 0x44f0d5
lea edx, [ebp - 0x80c8]
push edx
lea ecx, [ebp - 0x7498]
push ecx
call fcn.0049fdd4
add esp, 8
lea edx, [ebp - 0x7498]
mov eax, 0x4cfe48
xor ecx, ecx
call fcn.0045b204
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x204]
mov edx, 2
call fcn.0041070c
dec dword [ebp - 0x20c]
dec dword [ebp - 0x20c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.0043ed58
sub dword [ebp - 0x20c], 4
lea eax, [ebp - 0x10c]
mov edx, 2
call fcn.0041070c
mov ecx, dword [ebp - 0x228]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10