Function at 0x427bf0
Capabilities:
Accept command line arguments
Check if file exists
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4dc0c9
mov eax, dword fs:[0]
push eax
sub esp, 0xa88
mov eax, dword [0x5194b4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xa74], ecx
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411e10
call fcn.004346a0
mov ecx, eax
call fcn.00434730
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x429581
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa6c], eax
mov dword [ebp - 4], 0
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x42958b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__pep
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x427ca5
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x427cb1
push 5
push str.__pep
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
or ebx, 0xffffffff
mov byte [ebp - 4], 0
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x427cf3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0xa6c]
call fcn.004b60dd
add esp, 4
mov dword [ebp - 0xa80], eax
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x429595
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__pid
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x427d45
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x427d51
push 5
push str.__pid
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov eax, ebx
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x427d90
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0xa6c]
call fcn.004b60dd
add esp, 4
mov dword [ebp - 0xa68], eax
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x42959f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__tid
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x427de2
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x427dee
push 5
push str.__tid
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov eax, ebx
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x427e2d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0xa6c]
call fcn.004b60dd
add esp, 4
mov dword [ebp - 0xa78], eax
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295a9
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__dir
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x427e7f
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x427e8b
push 5
push str.__dir
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov eax, ebx
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x427eca
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xa6c]
add eax, 0xfffffff0
push eax
call fcn.0040f200
add esp, 4
lea edi, [eax + 0x10]
mov dword [ebp - 0xa94], edi
mov byte [ebp - 4], 9
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295b3
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__direx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x427f27
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x427f33
push 7
push str.__direx
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov eax, ebx
mov byte [ebp - 4], 9
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x427f72
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xa6c]
add eax, 0xfffffff0
push eax
call fcn.0040f200
add esp, 4
lea esi, [eax + 0x10]
mov dword [ebp - 0xa88], esi
cmp dword [edi - 0xc], 0
mov byte [ebp - 4], 0xc
jne 0x4280cd
push dword [ebp - 0xa78]
mov ecx, dword [ebp - 0xa74]
push dword [ebp - 0xa68]
add ecx, 0x8c
push dword [ebp - 0xa80]
call fcn.0041d330
test eax, eax
jne 0x4280cd
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4280ae
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa60]
mov dword [ebp - 0xa50], eax
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0xd
mov dword [ebp - 0xa38], 0
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], 0
call fcn.0041a360
mov byte [ebp - 4], 0xe
call fcn.00459880
mov dword [ebp - 0xa68], eax
lea ecx, [ebp - 0xa8]
push 0x17c
lea eax, [ebp - 0xa60]
push eax
lea eax, [ebp - 0xa48]
push eax
call fcn.00413fd0
mov ebx, eax
push str.init_MiniDumpWriteDump_failed.
push ebx
mov byte [ebp - 4], 0xf
call fcn.00413140
mov eax, dword [ebp - 0xa68]
add esp, 8
mov ecx, eax
mov edx, dword [eax]
push ebx
call dword [edx + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa48]
call fcn.00414bf0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
or ebx, 0xffffffff
mov byte [ebp - 4], 9
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x428eff
mov ecx, dword [esi]
push esi
jmp 0x428efa
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295bd
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__ver
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x42810b
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x428117
push 5
push str.__ver
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov ecx, ebx
mov dword [ebp - 0xa78], eax
add edx, 0xfffffff0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x428162
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xa78]
test eax, eax
je 0x428188
mov eax, dword [ebp - 0xa74]
lea ecx, [ebp - 0xa6c]
sub eax, 0xffffff80
push ecx
mov ecx, eax
mov dword [ebp - 0xa70], eax
call fcn.004116f0
jmp 0x4282c7
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.004881a0
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov ebx, dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea eax, [ebp - 0x218]
push eax
call ebx
lea eax, [ebp - 0x218]
push eax
call ebx
lea ecx, [ebp - 0xa8d]
call fcn.00427070
push eax
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push 0x200
lea eax, [ebp - 0x418]
push 0
push eax
call fcn.004881a0
push 0x100
lea eax, [ebp - 0x418]
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0041cdc0
add esp, 0x18
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295c7
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
lea eax, [ebp - 0x418]
mov byte [ebp - 4], 0x12
test eax, 0xffff0000
jne 0x428250
movzx eax, ax
lea ecx, [ebp - 0xa64]
push eax
call fcn.004100a0
jmp 0x428282
lea ecx, [ebp - 0x418]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x428260
sub ecx, edx
lea eax, [ebp - 0x418]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xa64]
call fcn.00410390
mov eax, dword [ebp - 0xa74]
lea ecx, [ebp - 0xa64]
sub eax, 0xffffff80
mov byte [ebp - 4], 0x13
push ecx
mov ecx, eax
mov dword [ebp - 0xa70], eax
call fcn.004116f0
mov edx, dword [ebp - 0xa64]
or ebx, 0xffffffff
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4282c7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xa74]
push dword [ebp - 0xa70]
lea ecx, [ecx + 0x60]
call fcn.004116f0
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295d1
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__src
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x428319
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x428325
push 5
push str.__src
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov ecx, ebx
mov dword [ebp - 0xa78], eax
add edx, 0xfffffff0
mov byte [ebp - 4], 0xc
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x428370
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xa78]
test eax, eax
mov eax, dword [ebp - 0xa74]
je 0x428395
add eax, 0x84
lea ecx, [ebp - 0xa6c]
push ecx
mov ecx, eax
mov dword [ebp - 0xa8c], eax
call fcn.004116f0
jmp 0x4283ae
add eax, 0x84
push 9
push str.defragger
mov ecx, eax
mov dword [ebp - 0xa8c], eax
call fcn.00410390
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295db
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__rep
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x4283ec
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x4283f8
push 5
push str.__rep
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428437
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0xa6c]
call fcn.004b60dd
mov ecx, dword [ebp - 0xa74]
dec eax
add esp, 4
neg eax
sbb eax, eax
inc eax
mov dword [ecx + 0x88], eax
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4285aa
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x18
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x19
call fcn.00459880
mov dword [ebp - 0xa78], eax
lea ecx, [ebp - 0xa8]
push 0x191
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov dword [ebp - 0xa64], eax
push str.src
push eax
mov byte [ebp - 4], 0x1a
call fcn.00413140
mov ecx, dword [ebp - 0xa8c]
mov ebx, 0x4eb03c
mov edx, ebx
mov ecx, dword [ecx]
test ecx, ecx
cmovne edx, ecx
push edx
push dword [ebp - 0xa64]
call fcn.00413140
push str._ver
push dword [ebp - 0xa64]
call fcn.00413140
mov eax, dword [ebp - 0xa70]
mov eax, dword [eax]
test eax, eax
cmovne ebx, eax
push ebx
mov ebx, dword [ebp - 0xa64]
push ebx
call fcn.00413140
push str._rep
push ebx
call fcn.00413140
mov eax, dword [ebp - 0xa74]
add esp, 0x28
mov ecx, ebx
push dword [eax + 0x88]
call fcn.00415400
mov ecx, dword [ebp - 0xa78]
push ebx
mov eax, dword [ecx]
call dword [eax + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0xc
call fcn.00414bf0
xor eax, eax
cmp dword [ebp - 0xa80], eax
push 1
sete al
mov dword [ebp - 0xa78], eax
lea eax, [ebp - 0xa70]
push eax
call fcn.00482360
add esp, 8
mov edx, dword [ebp - 0xa70]
mov ecx, 1
mov byte [ebp - 4], 0x1b
mov eax, dword [edx - 8]
sub ecx, dword [edx - 4]
sub eax, 0x104
or eax, ecx
jge 0x428600
push 0x104
lea ecx, [ebp - 0xa70]
call fcn.00410250
mov edx, dword [ebp - 0xa70]
cmp dword [edx - 8], 0x104
jl 0x4295e5
mov dword [edx - 0xc], 0x104
xor ecx, ecx
mov eax, dword [ebp - 0xa70]
push str.logdumpuper.log.on
push edx
mov word [eax + 0x208], cx
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
mov eax, dword [ebp - 0xa70]
push dword [eax - 8]
push eax
call fcn.004955b3
mov edx, eax
add esp, 8
test edx, edx
js 0x4295e5
mov ecx, dword [ebp - 0xa70]
cmp edx, dword [ecx - 8]
jg 0x4295e5
mov dword [ecx - 0xc], edx
xor ecx, ecx
mov eax, dword [ebp - 0xa70]
mov word [eax + edx*2], cx
push dword [ebp - 0xa70]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x42876c
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x428762
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x1d
call fcn.00459880
mov dword [ebp - 0xa80], eax
lea ecx, [ebp - 0xa8]
push 0x19c
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str.test_mode__no_delete__no_upload
push ebx
mov byte [ebp - 4], 0x1e
call fcn.00415690
mov eax, dword [ebp - 0xa80]
add esp, 8
mov ecx, eax
mov edx, dword [eax]
push ebx
call dword [edx + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
call fcn.00414bf0
mov dword [ebp - 0xa78], 1
mov edx, dword [ebp - 0xa70]
or ebx, 0xffffffff
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428790
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xa74]
push dword [ebp - 0xa8c]
add eax, 0x44
mov ecx, eax
mov dword [ebp - 0xa80], eax
call fcn.00432d90
cmp dword [ebp - 0xa78], 0
jne 0x4288c0
mov eax, dword [ebp - 0xa74]
cmp dword [eax + 0x88], 0
jne 0x4288c0
mov ecx, eax
call fcn.0042a1d0
test eax, eax
je 0x4288c0
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4280ae
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x1f
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x20
call fcn.00459880
mov dword [ebp - 0xa68], eax
lea ecx, [ebp - 0xa8]
push 0x1a4
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str.repeat_upload_disabled.
push ebx
mov byte [ebp - 4], 0x21
call fcn.00413140
mov eax, dword [ebp - 0xa68]
add esp, 8
mov ecx, eax
mov edx, dword [eax]
push ebx
call dword [edx + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
jmp 0x4280a6
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295ef
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa7c], eax
cmp dword [edi - 0xc], 0
mov byte [ebp - 4], 0x22
jne 0x428f43
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x4295f9
mov eax, dword [ecx]
call dword [eax + 0xc]
lea esi, [eax + 0x10]
mov dword [ebp - 0xa8c], esi
push dword [ebp - 0xa68]
mov byte [ebp - 4], 0x23
push 0
push 0x410
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0xa68], eax
test eax, eax
je 0x428a8b
push 0x104
lea ecx, [ebp - 0x828]
push ecx
push 0
push eax
call sub.PSAPI.DLL_GetModuleFileNameExW
push dword [ebp - 0xa68]
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
jne 0x428a51
call fcn.00459880
mov ecx, eax
push 2
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x428a88
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa68], eax
mov dword [ebp - 0xa38], ebx
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], bl
call fcn.0041a360
push 3
push 0x4eb47c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x24
mov dword [ebp - 0xa50], ebx
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], bl
call fcn.0041a360
mov byte [ebp - 4], 0x25
call fcn.00459880
mov dword [ebp - 0xa64], eax
lea ecx, [ebp - 0xa8]
push 0x46
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str._Method1__GetModuleFileNameEx_failed._errcode:
push ebx
mov byte [ebp - 4], 0x26
call fcn.00415690
add esp, 8
mov ecx, ebx
push dword [ebp - 0xa68]
call fcn.0041c650
mov ecx, dword [ebp - 0xa64]
push ebx
mov eax, dword [ecx]
call dword [eax + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0x23
call fcn.00414bf0
jmp 0x428a88
lea ecx, [ebp - 0x828]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x428a60
sub ecx, edx
lea eax, [ebp - 0x828]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xa8c]
call fcn.00410390
mov esi, dword [ebp - 0xa8c]
or ebx, 0xffffffff
mov ecx, dword [ebp - 0xa74]
lea eax, [ebp - 0xa68]
push eax
lea ecx, [ecx + 0x8c]
call fcn.0041c950
push eax
lea ecx, [ebp - 0xa7c]
mov byte [ebp - 4], 0x27
call fcn.004116f0
mov edx, dword [ebp - 0xa68]
mov eax, ebx
mov byte [ebp - 4], 0x23
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428ad4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0xa7c]
mov eax, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
call eax
test eax, eax
je 0x428dba
mov eax, dword [ebp - 0xa7c]
cmp dword [eax - 0xc], 0
je 0x428dba
call fcn.0040f470
mov ecx, eax
test ecx, ecx
je 0x429603
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa64], eax
mov eax, str.__restart
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xa64]
test eax, 0xffff0000
jne 0x428b37
movzx eax, ax
push eax
call fcn.004100a0
jmp 0x428b43
push 9
push str.__restart
call fcn.00410390
lea eax, [ebp - 0xa6c]
mov byte [ebp - 4], 0x2c
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0041d070
mov ecx, eax
call fcn.00411bd0
mov edx, dword [ebp - 0xa64]
mov ecx, ebx
mov dword [ebp - 0xa68], eax
add edx, 0xfffffff0
mov byte [ebp - 4], 0x23
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x428b8e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xa68]
test eax, eax
je 0x428d68
push 0
push 0
push 0
push 1
push 0
call fcn.0041d070
mov ecx, eax
call fcn.00411bc0
push eax
push esi
call fcn.00485570
add esp, 0x1c
test eax, eax
je 0x428c7c
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x428d68
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x2d
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x2e
call fcn.00459880
mov dword [ebp - 0xa68], eax
lea ecx, [ebp - 0xa8]
push 0x1b5
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str.run_tray_suc
push ebx
mov byte [ebp - 4], 0x2f
call fcn.00415690
mov eax, dword [ebp - 0xa68]
jmp 0x428d35
call fcn.00459880
mov ecx, eax
push 2
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x428d68
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb47c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x30
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x31
call fcn.00459880
mov dword [ebp - 0xa68], eax
lea ecx, [ebp - 0xa8]
push 0x1b7
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str.run_tray_err
push ebx
mov byte [ebp - 4], 0x32
call fcn.00415690
mov eax, dword [ebp - 0xa68]
mov edx, dword [eax]
add esp, 8
mov ecx, eax
push ebx
call dword [edx + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0x23
call fcn.00414bf0
or ebx, 0xffffffff
mov ecx, dword [ebp - 0xa74]
lea eax, [ebp - 0xa7c]
push eax
lea ecx, [ecx + 0x7c]
call fcn.004116f0
mov byte [ebp - 4], 0x22
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x428d98
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0xa88]
cmp dword [ebp - 0xa78], 0
je 0x4290f7
mov dword [ebp - 0xa68], 0
jmp 0x4294e6
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x428ea2
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x28
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x29
call fcn.00459880
mov dword [ebp - 0xa68], eax
lea ecx, [ebp - 0xa8]
push 0x1ad
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str.generate_dump_file_failed.
push ebx
mov byte [ebp - 4], 0x2a
call fcn.00413140
mov eax, dword [ebp - 0xa68]
add esp, 8
mov ecx, eax
mov edx, dword [eax]
push ebx
call dword [edx + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
call fcn.00414bf0
or ebx, 0xffffffff
mov byte [ebp - 4], 0x22
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x428ebd
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xa7c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428ede
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xa88]
mov eax, ebx
mov byte [ebp - 4], 9
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428eff
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0
add edi, 0xfffffff0
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x428f1a
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xa6c]
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x428f3c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
xor eax, eax
jmp 0x429565
mov eax, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push edi
call eax
test eax, eax
jne 0x42904a
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x428dab
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x33
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x34
call fcn.00459880
mov dword [ebp - 0xa68], eax
lea ecx, [ebp - 0xa8]
push 0x1be
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str.no_found_dir
push ebx
mov byte [ebp - 4], 0x35
call fcn.00415690
mov eax, dword [ebp - 0xa68]
add esp, 8
mov ecx, eax
mov edx, dword [eax]
push ebx
call dword [edx + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
call fcn.00414bf0
or ebx, 0xffffffff
mov dword [ebp - 0xa68], 0
jmp 0x4294e6
push 0x208
lea eax, [ebp - 0x620]
push 0
push eax
call fcn.004881a0
add esp, 0xc
lea eax, [ebp - 0x620]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push 0x4eb184
lea eax, [ebp - 0x620]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push 0x208
lea eax, [ebp - 0xa30]
push 0
push eax
call fcn.004881a0
add esp, 0xc
lea eax, [ebp - 0xa30]
push 0x104
push eax
call fcn.00463220
lea eax, [ebp - 0xa30]
push eax
lea eax, [ebp - 0x620]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea ecx, [ebp - 0x620]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4290d0
sub ecx, edx
lea eax, [ebp - 0x620]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xa7c]
call fcn.00410390
jmp 0x428d9e
mov eax, dword [ebp - 0xa74]
lea ecx, [ebp - 0xa7c]
add eax, 0x78
push ecx
mov ecx, eax
mov dword [ebp - 0xa64], eax
call fcn.004116f0
mov ecx, dword [ebp - 0xa64]
push str..zip
mov eax, dword [ecx]
mov eax, dword [eax - 0xc]
add eax, 5
push eax
call fcn.004296d0
push eax
call dword [sym.imp.SHLWAPI.dll_PathRenameExtensionW]
mov ecx, dword [ebp - 0xa64]
mov eax, dword [ecx]
test eax, eax
jne 0x429144
xor edx, edx
jmp 0x429160
push dword [eax - 8]
push eax
call fcn.004955b3
mov edx, eax
add esp, 8
test edx, edx
js 0x4295e5
mov ecx, dword [ebp - 0xa64]
mov eax, dword [ecx]
cmp edx, dword [eax - 8]
jg 0x4295e5
mov dword [eax - 0xc], edx
xor esi, esi
mov eax, dword [ecx]
push ecx
lea ecx, [ebp - 0xa84]
mov word [eax + edx*2], si
call fcn.004350d0
cmp dword [edi - 0xc], esi
mov esi, dword [ebp - 0xa88]
mov byte [ebp - 4], 0x36
jne 0x429390
lea ecx, [ebp - 0xa84]
call fcn.00435580
test eax, eax
je 0x42937c
lea eax, [ebp - 0xa7c]
push eax
lea ecx, [ebp - 0xa84]
call fcn.004351b0
test eax, eax
je 0x42937c
cmp dword [esi - 0xc], 0
je 0x429345
push 0x5c
push dword [ebp - 0xa7c]
call fcn.00488946
mov ecx, dword [ebp - 0xa7c]
add esp, 8
test eax, eax
jne 0x4291eb
or eax, 0xffffffff
jmp 0x4291ef
sub eax, ecx
sar eax, 1
mov edx, dword [ecx - 0xc]
xor esi, esi
add eax, 1
cmovns esi, eax
mov dword [ebp - 0xa68], esi
xor esi, esi
sub edx, eax
mov eax, SysReAllocString
cmovns esi, edx
mov edx, dword [ebp - 0xa68]
sub eax, edx
mov dword [ebp - 0xa78], esi
cmp eax, esi
jl 0x429626
lea eax, [esi + edx]
mov esi, dword [ecx - 0xc]
cmp eax, esi
jle 0x429232
mov eax, esi
sub eax, edx
jmp 0x429238
mov eax, dword [ebp - 0xa78]
xor esi, esi
cmp edx, dword [ecx - 0xc]
cmovle esi, eax
test edx, edx
jne 0x429263
cmp esi, dword [ecx - 0xc]
jne 0x429263
add ecx, 0xfffffff0
push ecx
call fcn.0040f200
add esp, 4
add eax, 0x10
mov dword [ebp - 0xa70], eax
jmp 0x429308
mov ecx, dword [ecx - 0x10]
test ecx, ecx
je 0x429279
mov eax, dword [ecx]
call dword [eax + 0x10]
mov dword [ebp - 0xa78], eax
test eax, eax
jne 0x42928b
call fcn.0040f470
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x10]
mov dword [ebp - 0xa78], eax
mov edx, dword [ebp - 0xa68]
mov ecx, dword [ebp - 0xa7c]
lea ecx, [ecx + edx*2]
mov dword [ebp - 0xa68], ecx
test eax, eax
je 0x42960d
test ecx, ecx
jne 0x4292b4
test esi, esi
jne 0x429617
mov eax, dword [eax]
mov ecx, dword [ebp - 0xa78]
push 2
push esi
call dword [eax]
test eax, eax
je 0x429621
add eax, 0x10
mov dword [ebp - 0xa70], eax
test esi, esi
js 0x4295e5
cmp esi, dword [eax - 8]
jg 0x4295e5
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebp - 0xa70]
push esi
push dword [ebp - 0xa68]
mov word [eax + esi*2], cx
push esi
push dword [ebp - 0xa70]
call fcn.0040f260
add esp, 0x10
mov ecx, dword [ebp - 0xa74]
lea eax, [ebp - 0xa70]
push 0xa
push 0
push eax
lea eax, [ebp - 0xa88]
mov byte [ebp - 4], 0x37
push eax
lea eax, [ebp - 0xa84]
push eax
call fcn.00427720
lea ecx, [ebp - 0xa70]
mov byte [ebp - 4], 0x36
call fcn.0040ef50
mov esi, dword [ebp - 0xa88]
lea ecx, [ebp - 0xa84]
call fcn.00435470
cmp dword [esi - 0xc], 0
je 0x429368
mov ecx, dword [ebp - 0xa74]
lea eax, [ebp - 0xa7c]
push eax
call fcn.0042a000
mov ecx, dword [ebp - 0xa64]
push ecx
mov ecx, dword [ebp - 0xa80]
call fcn.00431fc0
jmp 0x4293dd
mov ecx, dword [ebp - 0xa80]
lea eax, [ebp - 0xa7c]
push eax
call fcn.00431fc0
jmp 0x4293dd
mov ecx, dword [ebp - 0xa74]
lea eax, [ebp - 0xa68]
push eax
lea eax, [ebp - 0xa94]
mov dword [ebp - 0xa68], 0xa
push eax
lea eax, [ebp - 0xa84]
push eax
call fcn.00427300
mov ecx, dword [ebp - 0xa64]
push ecx
mov ecx, dword [ebp - 0xa80]
call fcn.00431fc0
lea ecx, [ebp - 0xa84]
call fcn.00435470
mov edi, dword [ebp - 0xa94]
mov ecx, dword [ebp - 0xa74]
mov eax, dword [ecx + 4]
mov dword [ecx + 0x74], eax
call fcn.00459880
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x4294d1
push 0xb
push str.MainWnd.cpp
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0xa38], eax
mov dword [ebp - 0xa34], 0xf
mov byte [ebp - 0xa48], al
call fcn.0041a360
push 3
push 0x4eb13c
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x38
mov dword [ebp - 0xa50], 0
mov dword [ebp - 0xa4c], 0xf
mov byte [ebp - 0xa60], 0
call fcn.0041a360
mov byte [ebp - 4], 0x39
call fcn.00459880
mov dword [ebp - 0xa68], eax
lea ecx, [ebp - 0xa8]
push 0x21a
lea eax, [ebp - 0xa48]
push eax
lea eax, [ebp - 0xa60]
push eax
call fcn.00413fd0
mov ebx, eax
push str.generate_upload_zip_file_suc
push ebx
mov byte [ebp - 4], 0x3a
call fcn.00413140
mov eax, dword [ebp - 0xa68]
add esp, 8
mov ecx, eax
mov edx, dword [eax]
push ebx
call dword [edx + 0x1c]
lea ecx, [ebp - 0xa8]
call fcn.004157c0
lea ecx, [ebp - 0xa60]
call fcn.00414bf0
lea ecx, [ebp - 0xa48]
call fcn.00414bf0
or ebx, 0xffffffff
lea ecx, [ebp - 0xa84]
mov dword [ebp - 0xa68], 1
call fcn.00435190
mov edx, dword [ebp - 0xa7c]
mov eax, ebx
mov byte [ebp - 4], 0xc
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x429507
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 9
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x429522
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0
add edi, 0xfffffff0
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x42953d
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xa6c]
mov dword [ebp - 4], 0xffffffff
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x42955f
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0xa68]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00469a5c
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80070057
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80004005
call fcn.0040f1b0
push 0x80070057
call fcn.0040f1b0
call fcn.004104c0
push 0x80070216
call fcn.0040f1b0
int3