Function at 0x43e810
Capabilities:
Check for time delay via gettickcount
Check if file exists
Delete file
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6a33da
mov eax, dword fs:[0]
push eax
sub esp, 0x808
mov eax, dword [0x778400]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x610], ecx
mov eax, dword [ebp - 0x610]
mov byte [eax + 0x12a4], 1
mov ecx, dword [ebp - 0x610]
cmp dword [ecx + 0x1310], 0
je 0x43e86e
mov edx, dword [ebp - 0x610]
mov ecx, dword [edx + 0x1310]
call fcn.004fb940
mov ecx, dword [ebp - 0x610]
add ecx, 0x104
call fcn.00419090
movzx eax, al
test eax, eax
je 0x43fb2b
mov byte [ebp - 0x114], 0
push 0x103
push 0
lea ecx, [ebp - 0x113]
push ecx
call fcn.0066eb10
add esp, 0xc
lea edx, [ebp - 0x344]
push edx
call fcn.00414450
add esp, 4
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x610]
add ecx, 0x12f8
call fcn.00419090
movzx eax, al
test eax, eax
jne 0x43e90d
push 0x7417b8
lea ecx, [ebp - 0x344]
call fcn.004157f0
mov ecx, dword [ebp - 0x610]
add ecx, 0x12f8
push ecx
lea ecx, [ebp - 0x344]
call fcn.004157d0
push 0x7417bc
lea ecx, [ebp - 0x344]
call fcn.004157f0
push str..exe
lea ecx, [ebp - 0x344]
call fcn.004157f0
lea ecx, [ebp - 0x3bc]
call fcn.00419520
mov byte [ebp - 4], 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x71c], esp
lea edx, [ebp - 0x344]
push edx
call fcn.004190c0
mov dword [ebp - 0x6e0], eax
lea eax, [ebp - 0x3bc]
push eax
call fcn.004e65b0
add esp, 0x1c
lea ecx, [ebp - 0x3ec]
push ecx
call fcn.00414550
add esp, 4
mov byte [ebp - 4], 2
push 1
lea ecx, [ebp - 0x3bc]
call fcn.0041b040
push eax
lea ecx, [ebp - 0x3ec]
call fcn.0041b040
push eax
lea edx, [ebp - 0x404]
push edx
call fcn.004eb6a0
add esp, 0x10
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3d4]
call fcn.00419670
mov byte [ebp - 4], 4
lea eax, [ebp - 0x404]
push eax
lea ecx, [ebp - 0x754]
push ecx
call fcn.004ec100
add esp, 8
mov dword [ebp - 0x644], eax
mov edx, dword [ebp - 0x644]
push edx
lea ecx, [ebp - 0x3d4]
call fcn.00415700
lea ecx, [ebp - 0x754]
call fcn.00419eb0
lea ecx, [ebp - 0x3d4]
call fcn.0041af60
push eax
push 0x104
lea eax, [ebp - 0x114]
push eax
call fcn.0066df1d
add esp, 0xc
mov ecx, dword [ebp - 0x610]
cmp dword [ecx + 0x1268], 0
je 0x43ea34
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
push eax
call fcn.00510440
add esp, 4
mov ecx, dword [ebp - 0x610]
mov dword [ecx + 0x1268], 0
mov edx, dword [ebp - 0x610]
add edx, 0x1268
push edx
call fcn.00510390
add esp, 4
mov eax, dword [ebp - 0x610]
cmp dword [eax + 0x1268], 0
je 0x43facb
mov ecx, dword [ebp - 0x610]
cmp dword [ecx + 0x1310], 0
je 0x43ea7c
mov edx, dword [ebp - 0x610]
mov ecx, dword [edx + 0x1310]
call fcn.004fb960
mov byte [0x78a81c], 0
mov eax, dword [ebp - 0x610]
mov dword [eax + 0x100], 0
push 0x20
lea ecx, [ebp - 0x484]
call fcn.00413f70
push 0
movzx ecx, byte [0x78aa76]
push ecx
movzx edx, byte [0x78aa75]
push edx
movzx eax, byte [0x78aa74]
push eax
mov ecx, dword [ebp - 0x610]
push ecx
push 0x43dd60
lea edx, [ebp - 0x73c]
push edx
call fcn.00448610
add esp, 0x18
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0x484]
call fcn.00448660
mov byte [ebp - 4], 5
lea eax, [ebp - 0x484]
push eax
mov ecx, dword [ebp - 0x610]
mov edx, dword [ecx + 0x1268]
mov eax, dword [ebp - 0x610]
mov edx, dword [edx]
mov ecx, dword [eax + 0x1268]
mov eax, dword [edx + 0x1c]
call eax
lea ecx, [ebp - 0x35c]
call fcn.00419670
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x610]
cmp dword [ecx + 0x334], 0
je 0x43ebea
lea edx, [ebp - 0x35c]
push edx
push 0x7417c8
push 0x1f6
call fcn.004e85c0
add esp, 0xc
movzx eax, al
test eax, eax
jne 0x43ebe5
mov ecx, dword [ebp - 0x610]
mov dword [ecx + 0xf8], 3
push 3
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x35c]
call fcn.00419eb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x484]
call fcn.0041a170
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3d4]
call fcn.00419eb0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x404]
call fcn.00419320
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3ec]
call fcn.00419320
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3bc]
call fcn.00419320
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x344]
call fcn.00419eb0
jmp 0x4403c6
jmp 0x43ec9c
lea edx, [ebp - 0x35c]
push edx
push 0x7417d0
push 0x1f5
call fcn.004e85c0
add esp, 0xc
movzx eax, al
test eax, eax
jne 0x43ec9c
mov ecx, dword [ebp - 0x610]
mov dword [ecx + 0xf8], 3
push 3
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x35c]
call fcn.00419eb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x484]
call fcn.0041a170
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3d4]
call fcn.00419eb0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x404]
call fcn.00419320
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3ec]
call fcn.00419320
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3bc]
call fcn.00419320
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x344]
call fcn.00419eb0
jmp 0x4403c6
lea ecx, [ebp - 0x35c]
call fcn.00419090
movzx edx, al
test edx, edx
je 0x43ed40
mov eax, dword [ebp - 0x610]
mov dword [eax + 0xf8], 3
push 3
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x35c]
call fcn.00419eb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x484]
call fcn.0041a170
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3d4]
call fcn.00419eb0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x404]
call fcn.00419320
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3ec]
call fcn.00419320
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3bc]
call fcn.00419320
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x344]
call fcn.00419eb0
jmp 0x4403c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x704], esp
lea edx, [ebp - 0x114]
push edx
call fcn.00419d50
mov dword [ebp - 0x6e8], eax
lea ecx, [ebp - 0x35c]
call fcn.004188e0
push eax
lea ecx, [ebp - 0x35c]
call fcn.0041af60
push eax
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1268]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x1268]
mov edx, dword [eax + 4]
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x78a820], eax
mov byte [0x78a81c], 0
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1268]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x1268]
mov edx, dword [eax + 0x18]
call edx
movzx eax, al
test eax, eax
jne 0x43edd7
movzx ecx, byte [0x78a81c]
test ecx, ecx
jne 0x43ee0f
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x2c]
call eax
mov ecx, dword [ebp - 0x610]
mov byte [ecx + 0x12a7], al
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x43eda6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x78a820]
xor edx, edx
mov ecx, 0x3e8
div ecx
mov dword [0x78a824], eax
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
movzx edx, byte [0x78a81b]
test edx, edx
je 0x43ee49
mov dword [0x78a824], 1
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1268]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x1268]
mov edx, dword [eax + 0x24]
call edx
mov dword [ebp - 0x618], eax
cmp dword [ebp - 0x618], 5
jne 0x43ee83
mov dword [ebp - 0x620], str.succeed
jmp 0x43ee8d
mov dword [ebp - 0x620], 0x7417e0
mov eax, dword [ebp - 0x618]
push eax
mov ecx, dword [ebp - 0x620]
push ecx
push str.Download_Finish_Result_:__s__d_._n
call fcn.004e64c0
add esp, 0xc
mov edx, dword [ebp - 0x610]
cmp dword [edx + 0x1310], 0
je 0x43f733
lea ecx, [ebp - 0x59c]
call fcn.004403e0
mov byte [ebp - 4], 7
push 0xc
lea ecx, [ebp - 0x380]
call fcn.00413f70
lea ecx, [ebp - 0x380]
call fcn.00415830
mov byte [ebp - 4], 8
push 0xc
lea ecx, [ebp - 0x3a4]
call fcn.00413f70
lea ecx, [ebp - 0x3a4]
call fcn.00415830
mov byte [ebp - 4], 9
push 0xc
lea ecx, [ebp - 0x38c]
call fcn.00413f70
lea eax, [ebp - 0x38c]
push eax
mov ecx, dword [ebp - 0x610]
mov edx, dword [ecx + 0x1268]
mov eax, dword [ebp - 0x610]
mov edx, dword [edx]
mov ecx, dword [eax + 0x1268]
mov eax, dword [edx + 0x44]
call eax
mov byte [ebp - 4], 0xa
push 0xc
lea ecx, [ebp - 0x368]
call fcn.00413f70
lea ecx, [ebp - 0x368]
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x48]
call eax
mov byte [ebp - 4], 0xb
push 0xc
lea ecx, [ebp - 0x374]
call fcn.00413f70
lea ecx, [ebp - 0x374]
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x50]
call eax
mov byte [ebp - 4], 0xc
push 0xc
lea ecx, [ebp - 0x398]
call fcn.00413f70
lea ecx, [ebp - 0x398]
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x54]
call eax
mov byte [ebp - 4], 0xd
push 4
lea ecx, [ebp - 0x320]
call fcn.00413f70
lea ecx, [ebp - 0x320]
push ecx
lea ecx, [ebp - 0x38c]
call fcn.00416630
jmp 0x43f013
push 0
lea edx, [ebp - 0x70c]
push edx
lea ecx, [ebp - 0x320]
call fcn.00445c10
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x38c]
call fcn.00416660
push eax
lea ecx, [ebp - 0x320]
call fcn.0041fb00
movzx ecx, al
test ecx, ecx
je 0x43f146
lea ecx, [ebp - 0x60c]
call fcn.004404f0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x320]
call fcn.00445a50
push eax
lea ecx, [ebp - 0x60c]
call fcn.004157b0
lea ecx, [ebp - 0x320]
call fcn.00445a50
mov dl, byte [eax + 0x410]
mov byte [ebp - 0x5f4], dl
lea ecx, [ebp - 0x320]
call fcn.00445a50
mov eax, dword [eax + 0x414]
mov dword [ebp - 0x5f0], eax
lea ecx, [ebp - 0x320]
call fcn.00445a50
add eax, 0x41c
push eax
lea ecx, [ebp - 0x5ec]
call fcn.004195f0
lea ecx, [ebp - 0x320]
call fcn.00445a50
mov cl, byte [eax + 0x418]
mov byte [ebp - 0x5d4], cl
lea ecx, [ebp - 0x320]
call fcn.00445a50
mov dl, byte [eax + 0x434]
mov byte [ebp - 0x5d3], dl
lea ecx, [ebp - 0x320]
call fcn.00445a50
mov ecx, dword [eax + 0x438]
mov dword [ebp - 0x5cc], ecx
mov edx, dword [eax + 0x43c]
mov dword [ebp - 0x5c8], edx
lea ecx, [ebp - 0x320]
call fcn.00445a50
mov ecx, dword [eax + 0x440]
mov dword [ebp - 0x5c4], ecx
mov edx, dword [eax + 0x444]
mov dword [ebp - 0x5c0], edx
lea eax, [ebp - 0x60c]
push eax
lea ecx, [ebp - 0x380]
call fcn.004457e0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x60c]
call fcn.004405a0
jmp 0x43efff
push 4
lea ecx, [ebp - 0x324]
call fcn.00413f70
lea ecx, [ebp - 0x324]
push ecx
lea ecx, [ebp - 0x368]
call fcn.00416630
jmp 0x43f17b
push 0
lea edx, [ebp - 0x6f4]
push edx
lea ecx, [ebp - 0x324]
call fcn.00445c10
lea eax, [ebp - 0x6f8]
push eax
lea ecx, [ebp - 0x368]
call fcn.00416660
push eax
lea ecx, [ebp - 0x324]
call fcn.0041fb00
movzx ecx, al
test ecx, ecx
je 0x43f503
lea ecx, [ebp - 0x524]
call fcn.004404f0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x324]
call fcn.00445a50
push eax
lea ecx, [ebp - 0x524]
call fcn.004157b0
lea ecx, [ebp - 0x324]
call fcn.00445a50
mov dl, byte [eax + 0x410]
mov byte [ebp - 0x50c], dl
lea ecx, [ebp - 0x324]
call fcn.00445a50
mov eax, dword [eax + 0x414]
mov dword [ebp - 0x508], eax
lea ecx, [ebp - 0x324]
call fcn.00445a50
add eax, 0x41c
push eax
lea ecx, [ebp - 0x504]
call fcn.004195f0
lea ecx, [ebp - 0x324]
call fcn.00445a50
mov cl, byte [eax + 0x418]
mov byte [ebp - 0x4ec], cl
lea ecx, [ebp - 0x324]
call fcn.00445a50
mov dl, byte [eax + 0x434]
mov byte [ebp - 0x4eb], dl
lea ecx, [ebp - 0x324]
call fcn.00445a50
mov ecx, dword [eax + 0x438]
mov dword [ebp - 0x4e4], ecx
mov edx, dword [eax + 0x43c]
mov dword [ebp - 0x4e0], edx
lea ecx, [ebp - 0x324]
call fcn.00445a50
mov ecx, dword [eax + 0x440]
mov dword [ebp - 0x4dc], ecx
mov edx, dword [eax + 0x444]
mov dword [ebp - 0x4d8], edx
push 4
lea ecx, [ebp - 0x32c]
call fcn.00413f70
lea eax, [ebp - 0x32c]
push eax
lea ecx, [ebp - 0x374]
call fcn.00416630
jmp 0x43f2bd
push 0
lea ecx, [ebp - 0x694]
push ecx
lea ecx, [ebp - 0x32c]
call fcn.00445c60
lea edx, [ebp - 0x69c]
push edx
lea ecx, [ebp - 0x374]
call fcn.00416660
push eax
lea ecx, [ebp - 0x32c]
call fcn.0041fb00
movzx eax, al
test eax, eax
je 0x43f325
lea ecx, [ebp - 0x504]
push ecx
lea ecx, [ebp - 0x32c]
call fcn.00445a50
push eax
call fcn.004487c0
add esp, 8
movzx edx, al
test edx, edx
je 0x43f323
lea ecx, [ebp - 0x32c]
call fcn.00445a50
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x4d4], ecx
mov edx, dword [eax + 0x1c]
mov dword [ebp - 0x4d0], edx
jmp 0x43f325
jmp 0x43f2a9
lea ecx, [ebp - 0x434]
call fcn.00419670
mov byte [ebp - 4], 0x10
push 4
lea ecx, [ebp - 0x328]
call fcn.00413f70
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x398]
call fcn.00416630
jmp 0x43f369
push 0
lea ecx, [ebp - 0x6a4]
push ecx
lea ecx, [ebp - 0x328]
call fcn.00445cb0
lea edx, [ebp - 0x6ac]
push edx
lea ecx, [ebp - 0x398]
call fcn.00416660
push eax
lea ecx, [ebp - 0x328]
call fcn.0041fb00
movzx eax, al
test eax, eax
je 0x43f4bc
lea ecx, [ebp - 0x504]
push ecx
lea ecx, [ebp - 0x328]
call fcn.00445a50
push eax
call fcn.004487c0
add esp, 8
movzx edx, al
test edx, edx
je 0x43f4b7
lea ecx, [ebp - 0x41c]
call fcn.00419670
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x328]
call fcn.00445a50
cmp dword [eax + 0x18], 0
jne 0x43f3f1
push str.repair
lea ecx, [ebp - 0x41c]
call fcn.004157b0
mov byte [ebp - 0x528], 1
jmp 0x43f46d
lea ecx, [ebp - 0x328]
call fcn.00445a50
cmp dword [eax + 0x18], 1
jne 0x43f41b
push str.timeOut
lea ecx, [ebp - 0x41c]
call fcn.004157b0
mov byte [ebp - 0x526], 1
jmp 0x43f46d
lea ecx, [ebp - 0x328]
call fcn.00445a50
cmp dword [eax + 0x18], 2
jne 0x43f445
push str.fail
lea ecx, [ebp - 0x41c]
call fcn.004157b0
mov byte [ebp - 0x527], 1
jmp 0x43f46d
lea ecx, [ebp - 0x328]
call fcn.00445a50
cmp dword [eax + 0x18], 3
jne 0x43f46d
push str.success_new
lea ecx, [ebp - 0x41c]
call fcn.004157b0
mov byte [ebp - 0x525], 1
push 0
lea eax, [ebp - 0x41c]
push eax
lea ecx, [ebp - 0x434]
call fcn.00444dd0
cmp eax, 0xffffffff
jne 0x43f4a8
lea ecx, [ebp - 0x41c]
push ecx
lea ecx, [ebp - 0x434]
call fcn.004157d0
push 0x741830
lea ecx, [ebp - 0x434]
call fcn.004157f0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x41c]
call fcn.00419eb0
jmp 0x43f355
lea edx, [ebp - 0x434]
push edx
lea ecx, [ebp - 0x4cc]
call fcn.004195f0
lea eax, [ebp - 0x524]
push eax
lea ecx, [ebp - 0x3a4]
call fcn.004457e0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x434]
call fcn.00419eb0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x524]
call fcn.004405a0
jmp 0x43f167
lea ecx, [ebp - 0x380]
push ecx
lea ecx, [ebp - 0x59c]
call fcn.00445590
lea edx, [ebp - 0x3a4]
push edx
lea ecx, [ebp - 0x590]
call fcn.00445590
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1268]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x1268]
mov edx, dword [eax + 0x4c]
call edx
fstp qword [ebp - 0x584]
cmp dword [ebp - 0x618], 5
jne 0x43f561
mov dword [ebp - 0x628], 1
jmp 0x43f56b
mov dword [ebp - 0x628], 0
mov al, byte [ebp - 0x628]
mov byte [ebp - 0x57c], al
mov ecx, dword [ebp - 0x610]
mov edx, dword [ecx + 0x1268]
mov eax, dword [ebp - 0x610]
mov edx, dword [edx]
mov ecx, dword [eax + 0x1268]
mov eax, dword [edx + 0x30]
call eax
mov dword [ebp - 0x578], eax
lea ecx, [ebp - 0x7fc]
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x34]
call eax
mov dword [ebp - 0x67c], eax
mov ecx, dword [ebp - 0x67c]
push ecx
lea ecx, [ebp - 0x574]
call fcn.00415700
lea ecx, [ebp - 0x7fc]
call fcn.00419eb0
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x40]
call eax
mov dword [ebp - 0x55c], eax
lea ecx, [ebp - 0x76c]
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x38]
call eax
mov dword [ebp - 0x684], eax
mov ecx, dword [ebp - 0x684]
push ecx
lea ecx, [ebp - 0x558]
call fcn.00415700
lea ecx, [ebp - 0x76c]
call fcn.00419eb0
lea edx, [ebp - 0x784]
push edx
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1268]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x1268]
mov edx, dword [eax + 0x3c]
call edx
mov dword [ebp - 0x68c], eax
mov eax, dword [ebp - 0x68c]
push eax
lea ecx, [ebp - 0x540]
call fcn.00415700
lea ecx, [ebp - 0x784]
call fcn.00419eb0
sub esp, 0x78
mov ecx, esp
mov dword [ebp - 0x6b4], esp
lea edx, [ebp - 0x59c]
push edx
call fcn.004405d0
mov dword [ebp - 0x6bc], eax
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1310]
call fcn.004fb9d0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x398]
call fcn.00445bf0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x374]
call fcn.00445bd0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x368]
call fcn.00445bb0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x38c]
call fcn.00445bb0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x3a4]
call fcn.00445570
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x380]
call fcn.00445570
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x59c]
call fcn.004404b0
cmp dword [ebp - 0x618], 5
jne 0x43f748
mov dword [ebp - 0x634], 1
jmp 0x43f752
mov dword [ebp - 0x634], 0
mov ecx, dword [ebp - 0x610]
mov dl, byte [ebp - 0x634]
mov byte [ecx + 0x12a5], dl
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1268]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x1268]
mov edx, dword [eax + 0x30]
call edx
mov ecx, dword [ebp - 0x610]
mov dword [ecx + 0x12ac], eax
lea edx, [ebp - 0x7b4]
push edx
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x1268]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x1268]
mov edx, dword [eax + 0x34]
call edx
mov dword [ebp - 0x640], eax
mov eax, dword [ebp - 0x640]
push eax
mov ecx, dword [ebp - 0x610]
add ecx, 0x12b0
call fcn.00415700
lea ecx, [ebp - 0x7b4]
call fcn.00419eb0
mov ecx, dword [ebp - 0x610]
mov edx, dword [ecx + 0x1268]
mov eax, dword [ebp - 0x610]
mov edx, dword [edx]
mov ecx, dword [eax + 0x1268]
mov eax, dword [edx + 0x2c]
call eax
mov ecx, dword [ebp - 0x610]
mov byte [ecx + 0x12a7], al
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 0x1268]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x1268]
mov eax, dword [edx + 0x14]
call eax
mov ecx, dword [ebp - 0x610]
mov edx, dword [ecx + 0x1268]
push edx
call fcn.00510440
add esp, 4
mov eax, dword [ebp - 0x610]
mov dword [eax + 0x1268], 0
lea ecx, [ebp - 0x114]
push ecx
lea ecx, [ebp - 0x44c]
call fcn.00419d50
mov byte [ebp - 4], 0x12
push str..cfg
lea ecx, [ebp - 0x44c]
call fcn.004157f0
lea ecx, [ebp - 0x44c]
call fcn.0041af60
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x43f89b
lea ecx, [ebp - 0x44c]
call fcn.0041af60
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea edx, [ebp - 0x114]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x43f9c4
cmp dword [ebp - 0x618], 5
jne 0x43f9c4
push str.Begin_install..._n
call fcn.004e64c0
add esp, 4
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x6c4], esp
lea eax, [ebp - 0x114]
push eax
call fcn.00419d50
mov dword [ebp - 0x6cc], eax
mov ecx, dword [ebp - 0x610]
add ecx, 0x104
push ecx
call fcn.004e65b0
add esp, 0x1c
push 1
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov edx, dword [ebp - 0x610]
mov dword [edx + 0xf8], 1
mov eax, dword [ebp - 0x610]
mov dword [eax + 0xf4], 1
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x610]
call fcn.004406e0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44c]
call fcn.00419eb0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x35c]
call fcn.00419eb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x484]
call fcn.0041a170
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3d4]
call fcn.00419eb0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x404]
call fcn.00419320
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3ec]
call fcn.00419320
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3bc]
call fcn.00419320
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x344]
call fcn.00419eb0
jmp 0x4403c6
cmp dword [ebp - 0x618], 3
jne 0x43fa1f
push str.Download_Failed._App_need_update._n
call fcn.004e64c0
add esp, 4
push 0x2e
call fcn.004f50a0
add esp, 4
mov dword [ebp - 0x668], eax
push 0
mov ecx, dword [ebp - 0x668]
push ecx
push str.ERROR
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov edx, dword [ebp - 0x610]
mov dword [edx + 0xf8], 3
push 3
mov ecx, dword [ebp - 0x610]
call fcn.00443120
jmp 0x43fa49
push str.Download_Failed._Show_retry._n
call fcn.004e64c0
add esp, 4
mov eax, dword [ebp - 0x610]
mov dword [eax + 0xf8], 3
push 3
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44c]
call fcn.00419eb0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x35c]
call fcn.00419eb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x484]
call fcn.0041a170
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3d4]
call fcn.00419eb0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x404]
call fcn.00419320
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3ec]
call fcn.00419320
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3bc]
call fcn.00419320
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x344]
call fcn.00419eb0
jmp 0x4403c6
push str.SetupDlg::DoInstall_pDownload__NULL._n
call fcn.004e64c0
add esp, 4
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3d4]
call fcn.00419eb0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x404]
call fcn.00419320
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3ec]
call fcn.00419320
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3bc]
call fcn.00419320
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x344]
call fcn.00419eb0
jmp 0x44021f
mov ecx, dword [ebp - 0x610]
cmp dword [ecx + 0x1310], 0
je 0x43fb4b
mov edx, dword [ebp - 0x610]
mov ecx, dword [edx + 0x1310]
call fcn.004fbb00
lea ecx, [ebp - 0x49c]
call fcn.00419670
mov dword [ebp - 4], 0x13
mov ecx, dword [ebp - 0x610]
add ecx, 0x104
call fcn.0041b040
push eax
lea eax, [ebp - 0x49c]
push eax
call fcn.0042dd40
add esp, 8
lea ecx, [ebp - 0x49c]
call fcn.0041af60
push eax
push str.Do_Install_File_:__s
call fcn.004e64c0
add esp, 8
call fcn.0042a670
xor ecx, ecx
mov word [ebp - 0x31c], cx
push 0x206
push 0
lea edx, [ebp - 0x31a]
push edx
call fcn.0066eb10
add esp, 0xc
mov eax, dword [ebp - 0x610]
cmp dword [eax + 0x334], 0
je 0x43fc27
lea ecx, [ebp - 0x7e4]
push ecx
call fcn.00414c50
add esp, 4
mov dword [ebp - 0x648], eax
mov edx, dword [ebp - 0x648]
mov dword [ebp - 0x688], edx
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x688]
push eax
mov ecx, dword [ebp - 0x610]
add ecx, 0x11c
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax + 0x7c]
call edx
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x7e4]
call fcn.00419320
jmp 0x43fc81
lea eax, [ebp - 0x814]
push eax
call fcn.00414b70
add esp, 4
mov dword [ebp - 0x650], eax
mov ecx, dword [ebp - 0x650]
mov dword [ebp - 0x670], ecx
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x670]
push edx
mov eax, dword [ebp - 0x610]
add eax, 0x11c
push eax
mov ecx, dword [ebp - 0x610]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x610]
mov eax, dword [edx + 0x7c]
call eax
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x814]
call fcn.00419320
mov ecx, dword [ebp - 0x610]
add ecx, 0x11c
call fcn.0041b040
push eax
lea ecx, [ebp - 0x31c]
push ecx
call dword [sym.imp.SHLWAPI.dll_StrCpyW]
lea edx, [ebp - 0x31c]
push edx
push str.Install_Path_:__s
call fcn.004e64c0
add esp, 8
mov eax, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x610]
mov eax, dword [edx + 0x88]
call eax
mov byte [ebp - 0x611], al
mov ecx, dword [ebp - 0x610]
add ecx, 0x11c
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax + 0x80]
call edx
mov dword [ebp - 0x66c], eax
call fcn.0042a670
push str.Begin_depack_file._n
call fcn.004e64c0
add esp, 4
mov eax, dword [ebp - 0x610]
add eax, 0x1374
push eax
mov ecx, dword [ebp - 0x610]
add ecx, 0x11c
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax + 0x58]
call edx
movzx eax, al
test eax, eax
je 0x43fd4b
push str.process_Before_Install_Error._n
call fcn.004e64c0
add esp, 4
mov ecx, dword [ebp - 0x610]
movzx edx, byte [ecx + 0x1374]
test edx, edx
je 0x440032
lea eax, [ebp - 0x7cc]
push eax
call fcn.004143b0
add esp, 4
mov dword [ebp - 0x658], eax
mov ecx, dword [ebp - 0x658]
mov dword [ebp - 0x680], ecx
mov byte [ebp - 4], 0x16
push 0xb
call fcn.004f50a0
add esp, 4
push eax
push 0x2b
call fcn.004f50a0
add esp, 4
push eax
mov ecx, dword [ebp - 0x680]
call fcn.0041b040
push eax
mov edx, dword [ebp - 0x610]
mov eax, dword [edx + 4]
push eax
call fcn.00453460
add esp, 0x10
mov dword [ebp - 0x624], eax
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x7cc]
call fcn.00419320
push 0
push 0x3e8
push 1
mov ecx, dword [ebp - 0x610]
call fcn.0043bdd0
push 2
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov ecx, dword [ebp - 0x610]
mov dword [ecx + 0xf8], 2
lea ecx, [ebp - 0x4b4]
call fcn.00419670
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x4b4]
push edx
mov eax, dword [ebp - 0x610]
add eax, 0x104
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x6d4], esp
push eax
call fcn.00417770
mov dword [ebp - 0x6dc], eax
call fcn.004e6550
add esp, 0x1c
lea ecx, [ebp - 0x464]
push ecx
call fcn.00414450
add esp, 4
mov byte [ebp - 4], 0x18
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x6e4], esp
push 0x741928
call fcn.00419d50
mov dword [ebp - 0x660], eax
mov edx, dword [ebp - 0x660]
mov dword [ebp - 0x690], edx
mov byte [ebp - 4], 0x19
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x724], esp
push 0x74192c
call fcn.00419d50
mov dword [ebp - 0x72c], eax
lea eax, [ebp - 0x464]
push eax
lea ecx, [ebp - 0x79c]
push ecx
mov byte [ebp - 4], 0x18
call fcn.004ea1b0
add esp, 0x38
mov dword [ebp - 0x678], eax
mov edx, dword [ebp - 0x678]
mov dword [ebp - 0x63c], edx
mov eax, dword [ebp - 0x63c]
push eax
lea ecx, [ebp - 0x464]
call fcn.00415700
lea ecx, [ebp - 0x79c]
call fcn.00419eb0
push str._Once
lea ecx, [ebp - 0x464]
call fcn.004157f0
lea ecx, [ebp - 0x4b4]
call fcn.0041af60
push eax
lea ecx, [ebp - 0x464]
call fcn.0041af60
push eax
call fcn.004e9560
add esp, 8
mov dword [ebp - 0x638], eax
cmp dword [ebp - 0x638], 0
je 0x43ff2c
mov dword [ebp - 0x630], 1
jmp 0x43ff36
mov dword [ebp - 0x630], 0
lea ecx, [ebp - 0x4b4]
call fcn.0041af60
push eax
mov ecx, dword [ebp - 0x630]
push ecx
push str.Add_Run_Once_:_Rel___d__path__s_
call fcn.004e64c0
add esp, 0xc
mov edx, dword [ebp - 0x610]
cmp dword [edx + 0x1310], 0
je 0x43ffba
mov eax, dword [ebp - 0x610]
movzx ecx, byte [eax + 0x12a8]
push ecx
sub esp, 0x18
mov edx, esp
mov dword [ebp - 0x734], esp
push edx
call fcn.004e8400
add esp, 4
mov dword [ebp - 0x64c], eax
mov eax, dword [ebp - 0x64c]
mov dword [ebp - 0x718], eax
mov byte [ebp - 4], 0x1a
call fcn.004e83f0
push eax
push 1
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x610]
mov ecx, dword [ecx + 0x1310]
call fcn.004fbb30
cmp dword [ebp - 0x624], 0x65c
je 0x43ffd2
cmp dword [ebp - 0x624], 0x65d
jne 0x43ffd7
call fcn.004ebe10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x730], esp
push str.restart
call fcn.00419d50
mov dword [ebp - 0x698], eax
mov ecx, dword [ebp - 0x610]
call fcn.0042dde0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x464]
call fcn.00419eb0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x4b4]
call fcn.00419eb0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x49c]
call fcn.00419eb0
jmp 0x4403c6
mov edx, dword [ebp - 0x610]
add edx, 0x11c
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x6fc], esp
push edx
call fcn.00417770
mov dword [ebp - 0x654], eax
mov eax, dword [ebp - 0x654]
mov dword [ebp - 0x6a0], eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x610]
add ecx, 0x104
sub esp, 0x18
mov edx, esp
mov dword [ebp - 0x700], esp
push ecx
mov ecx, edx
call fcn.00417770
mov dword [ebp - 0x6a8], eax
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x610]
mov eax, dword [edx + 0x3c]
call eax
mov dword [ebp - 0x65c], eax
mov ecx, dword [ebp - 0x65c]
mov dword [ebp - 0x61c], ecx
mov edx, dword [ebp - 0x61c]
push edx
push 0x741964
call fcn.004e64c0
add esp, 8
cmp dword [ebp - 0x61c], 0
jl 0x4400dc
mov dword [ebp - 0x62c], 1
jmp 0x4400e6
mov dword [ebp - 0x62c], 0
mov eax, dword [ebp - 0x610]
mov cl, byte [ebp - 0x62c]
mov byte [eax + 0x12a6], cl
cmp dword [ebp - 0x61c], 0
jge 0x4401ab
call fcn.004e83f0
push eax
mov edx, dword [ebp - 0x61c]
push edx
push 0x74197c
call fcn.004e64c0
add esp, 0xc
push 2
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov eax, dword [ebp - 0x610]
mov dword [eax + 0xf8], 2
mov ecx, dword [ebp - 0x610]
cmp dword [ecx + 0x1310], 0
je 0x440194
push 0
sub esp, 0x18
mov edx, esp
mov dword [ebp - 0x728], esp
push edx
call fcn.004e8400
add esp, 4
mov dword [ebp - 0x664], eax
mov eax, dword [ebp - 0x664]
mov dword [ebp - 0x6b0], eax
mov byte [ebp - 4], 0x1c
call fcn.004e83f0
push eax
push 0
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x610]
mov ecx, dword [ecx + 0x1310]
call fcn.004fbb30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x49c]
call fcn.00419eb0
jmp 0x4403c6
mov edx, dword [ebp - 0x610]
mov dword [edx + 0x123c], 0x3e8
movzx eax, byte [ebp - 0x611]
push eax
mov ecx, dword [ebp - 0x66c]
push ecx
mov edx, dword [ebp - 0x610]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax + 0x60]
call edx
push str.UpdateCtrlStatus_AfterInstall_
call fcn.004e64c0
add esp, 4
push 2
mov ecx, dword [ebp - 0x610]
call fcn.00443120
mov eax, dword [ebp - 0x610]
mov dword [eax + 0xf8], 2
call dword [sym.imp.ole32.dll_CoUninitialize]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x49c]
call fcn.00419eb0
mov ecx, dword [ebp - 0x610]
mov dword [ecx + 0xf4], 3
push 2
mov ecx, dword [ebp - 0x610]
call fcn.00443120
push 2
mov ecx, dword [ebp - 0x610]
call fcn.00443120
push 2
mov ecx, dword [ebp - 0x610]
call fcn.00443120
push str.Finish_AfterInstall_
call fcn.004e64c0
add esp, 4
mov edx, dword [ebp - 0x610]
cmp dword [edx + 0x1310], 0
je 0x4402cd
mov eax, dword [ebp - 0x610]
movzx ecx, byte [eax + 0x12a8]
push ecx
sub esp, 0x18
mov edx, esp
mov dword [ebp - 0x708], esp
push edx
call fcn.004e8400
add esp, 4
mov dword [ebp - 0x674], eax
mov eax, dword [ebp - 0x674]
mov dword [ebp - 0x6b8], eax
mov dword [ebp - 4], 0x1d
call fcn.004e83f0
push eax
push 1
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x610]
mov ecx, dword [ecx + 0x1310]
call fcn.004fbb30
call fcn.00444c20
test eax, eax
je 0x44033f
mov byte [0x7797c4], 0
call fcn.00444c30
test eax, eax
je 0x440314
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x720], esp
push 0x7419ec
call fcn.00418f80
mov dword [ebp - 0x6c0], eax
mov edx, dword [ebp - 0x610]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x610]
mov edx, dword [eax + 0x78]
call edx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x710], esp
push 0x741a1c
call fcn.00419d50
mov dword [ebp - 0x6c8], eax
mov ecx, dword [ebp - 0x610]
call fcn.0042dde0
jmp 0x4403c6
mov eax, dword [ebp - 0x610]
mov ecx, dword [eax + 0x90]
mov edx, dword [ebp - 0x610]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x90]
mov edx, dword [eax + 0x7c]
call edx
test eax, eax
je 0x4403bf
mov byte [0x7797c4], 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x6ec], esp
push 0x741a24
call fcn.00418f80
mov dword [ebp - 0x6d0], eax
mov eax, dword [ebp - 0x610]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x610]
mov eax, dword [edx + 0x78]
call eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x6f0], esp
push str.auto_run_app
call fcn.00419d50
mov dword [ebp - 0x6d8], eax
mov ecx, dword [ebp - 0x610]
call fcn.0042dde0
jmp 0x4403c6
mov byte [0x7797c4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0066c98d
mov esp, ebp
pop ebp
ret