Function at 0x419b60
Capabilities:
Delete file
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x466ab9
mov eax, dword fs:[0]
push eax
sub esp, 0x2a4
mov eax, dword [0x47e048]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x1ec], esi
mov ecx, 0x47e748
mov dword [ebp - 0x1f0], 0
call fcn.00402c20
push str.____Successfully_connected_to_server
push dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00414b90
add esp, 8
mov ecx, eax
push 0x415230
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0xe
movups xmmword [ecx], xmm0
push str.internl_loader
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00408640
mov ecx, 0x47e748
call fcn.00404400
push str._____Checking_for_updates
push dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00414b90
add esp, 8
mov ecx, eax
push 0x415230
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea eax, [ebp - 0x12c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
xorps xmm0, xmm0
mov dword [ebp - 0x1f8], 0
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x1f4], 0
movups xmmword [ebp - 0x208], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x419c51
sub ecx, edx
lea eax, [ebp - 0x12c]
push ecx
push eax
lea ecx, [ebp - 0x208]
call fcn.00408640
mov edi, 0x10
push 0xb
push str.module.dll
lea ecx, [ebp - 0x208]
mov dword [ebp - 4], 0
call fcn.00406dc0
cmp dword [eax + 0x14], edi
jb 0x419c92
mov eax, dword [eax]
mov dword [ebp - 0x1f0], eax
lea ecx, [ebp - 0x268]
push 0
lea eax, [ebp - 0x1f0]
push eax
call fcn.004186a0
lea eax, [ebp - 0x268]
mov byte [ebp - 4], 1
push eax
call fcn.0041a600
add esp, 4
mov byte [ebp - 0x1e5], al
lea ecx, [ebp - 0x268]
call fcn.00406c90
mov ecx, dword [ebp - 0x1f4]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0x10
jb 0x419d13
mov edx, dword [ebp - 0x208]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x419d09
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x419d09
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0041abdb
add esp, 8
cmp byte [ebp - 0x1e5], 0
jne 0x419dcc
push str.____Update_found
push dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00414b90
add esp, 8
mov ecx, eax
push 0x415230
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov dword [ebp - 0x1f0], esp
push 0xb
movups xmmword [ecx], xmm0
push str.module.dll
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00408640
sub esp, 0x18
mov dword [ebp - 4], 2
mov esi, esp
xorps xmm0, xmm0
sub esp, 0x18
mov ecx, esp
push 0xa
movups xmmword [ecx], xmm0
push str.module_Dll
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00408640
push esi
mov ecx, 0x47e748
call fcn.00404f50
mov dword [ebp - 4], 0xffffffff
call fcn.004196c0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
add esp, 0x30
push 0x415230
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
jmp 0x41a153
push 0xb8
lea eax, [ebp - 0xe0]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp - 0x208]
mov ecx, esi
push eax
call fcn.00419640
push 0xb
push str.module.dll
mov ecx, eax
mov dword [ebp - 4], 3
call fcn.00406dc0
cmp dword [eax + 0x14], 0x10
jb 0x419e0d
mov eax, dword [eax]
push 1
push 0x40
push 0x20
push eax
lea ecx, [ebp - 0xe0]
call fcn.004188f0
mov eax, dword [ebp - 0xe0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xe0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0xe0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0xe4], eax
mov ecx, dword [ebp - 0x1f4]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x419e86
mov edx, dword [ebp - 0x208]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x419e7c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x419e7c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0041abdb
add esp, 8
push 2
push 0
push 0
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0xf
mov byte [ebp - 0x208], 0
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0xb
movups xmmword [ecx], xmm0
push str.module_Size
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00408640
lea eax, [ebp - 0x268]
mov ecx, 0x47e748
push eax
call fcn.00404f50
mov esi, eax
lea eax, [ebp - 0x280]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0xe0]
call dword [sym.imp.MSVCP140.dll_public:_class_std::fpos_struct__Mbstatet____thiscall_std::basic_istream_char__struct_std::char_traits_char__::tellg_void_]
mov edx, dword [eax + 8]
add edx, dword [eax]
mov ecx, dword [eax + 0xc]
adc ecx, dword [eax + 4]
test ecx, ecx
jg 0x419f33
jl 0x419f17
test edx, edx
jae 0x419f33
neg edx
lea eax, [ebp - 0x13]
adc ecx, 0
neg ecx
push ecx
push edx
push eax
call fcn.004187c0
add esp, 0xc
mov byte [eax - 1], 0x2d
dec eax
jmp 0x419f41
push ecx
push edx
lea eax, [ebp - 0x13]
push eax
call fcn.004187c0
add esp, 0xc
lea ecx, [ebp - 0x1e5]
push ecx
lea ecx, [ebp - 0x13]
push ecx
push eax
lea ecx, [ebp - 0x298]
call fcn.00408070
cmp dword [esi + 0x14], 0x10
mov edi, 0x190
jb 0x419f65
mov esi, dword [esi]
cmp dword [ebp - 0x284], 0x10
lea eax, [ebp - 0x298]
mov edx, dword [ebp - 0x298]
cmovae eax, edx
nop dword [eax + eax]
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x419fa0
test cl, cl
je 0x419f9c
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x419fa0
add eax, 2
add esi, 2
test cl, cl
jne 0x419f80
xor esi, esi
jmp 0x419fa5
sbb esi, esi
or esi, 1
mov eax, dword [ebp - 0x284]
cmp eax, 0x10
jb 0x419fd7
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x419fcd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a007
push ecx
push edx
call fcn.0041abdb
add esp, 8
mov ecx, dword [ebp - 0x254]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x41a017
mov edx, dword [ebp - 0x268]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41a00d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41a00d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0041abdb
add esp, 8
test esi, esi
je 0x41a121
push str.____Update_found
push dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00414b90
add esp, 8
mov ecx, eax
push 0x415230
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0xd0]
call fcn.00417440
test eax, eax
jne 0x41a067
mov eax, dword [ebp - 0xe0]
lea ecx, [ebp - 0xe0]
push 0
push 2
add ecx, dword [eax + 4]
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool_]
mov ecx, dword [ebp - 0x1ec]
lea eax, [ebp - 0x280]
push eax
call fcn.00419640
push 0xb
push str.module.dll
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.00406dc0
cmp dword [eax + 0x14], 0x10
jb 0x41a093
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x280]
mov byte [ebp - 4], 5
call fcn.00406ea0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov dword [ebp - 0x1f0], esp
push 0xb
movups xmmword [ecx], xmm0
push str.module.dll
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00408640
sub esp, 0x18
mov byte [ebp - 4], 8
mov esi, esp
xorps xmm0, xmm0
sub esp, 0x18
mov ecx, esp
push 0xa
movups xmmword [ecx], xmm0
push str.module_Dll
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00408640
push esi
mov ecx, 0x47e748
call fcn.00404f50
mov byte [ebp - 4], 5
call fcn.004196c0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
add esp, 0x30
jmp 0x41a136
push str.____File_up_to_date
push dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00414b90
add esp, 8
mov ecx, eax
push 0x415230
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0xe0]
mov dword [ebp - 4], 0xffffffff
call fcn.00419540
push 0xb8
lea eax, [ebp - 0x1e4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [ebp - 0x12c]
add esp, 0xc
push eax
push 0x104
call esi
xorps xmm0, xmm0
mov dword [ebp - 0x1f8], 0
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x1f4], 0
movups xmmword [ebp - 0x208], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41a1a4
sub ecx, edx
lea eax, [ebp - 0x12c]
push ecx
push eax
lea ecx, [ebp - 0x208]
call fcn.00408640
or edi, 0x40
push 0xb
push str.module.dll
lea ecx, [ebp - 0x208]
mov dword [ebp - 4], 9
call fcn.00406dc0
cmp dword [eax + 0x14], 0x10
jb 0x41a1e4
mov eax, dword [eax]
push 1
push 0x40
push 0x20
push eax
lea ecx, [ebp - 0x1e4]
call fcn.004188f0
mov eax, dword [ebp - 0x1e4]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x1e4]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x1e8], eax
mov ecx, dword [ebp - 0x1f4]
mov byte [ebp - 4], 0xb
cmp ecx, 0x10
jb 0x41a25d
mov edx, dword [ebp - 0x208]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41a253
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41a253
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0041abdb
add esp, 8
push 2
push 0
push 0
lea ecx, [ebp - 0x1e4]
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0xf
mov byte [ebp - 0x208], 0
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
lea eax, [ebp - 0x12c]
push eax
push 0x104
call esi
xorps xmm0, xmm0
mov dword [ebp - 0x210], 0
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x20c], 0
movups xmmword [ebp - 0x220], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41a2c0
sub ecx, edx
lea eax, [ebp - 0x12c]
push ecx
push eax
lea ecx, [ebp - 0x220]
call fcn.00408640
or edi, 0x20
push 0xb
or edi, 1
mov byte [ebp - 4], 0xc
push str.module.dll
lea ecx, [ebp - 0x220]
mov dword [ebp - 0x1f0], edi
call fcn.00406dc0
cmp dword [eax + 0x14], 0x10
jb 0x41a306
mov eax, dword [eax]
mov dword [ebp - 0x1ec], eax
lea ecx, [ebp - 0x280]
push 0
lea eax, [ebp - 0x1ec]
push eax
call fcn.004186a0
lea eax, [ebp - 0x280]
mov dword [ebp - 4], 0xd
or edi, 2
push eax
mov dword [ebp - 0x1ec], edi
mov dword [ebp - 0x1f0], edi
call fcn.0041a600
add esp, 4
test al, al
je 0x41a462
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0xb
movups xmmword [ecx], xmm0
push str.module_Size
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00408640
lea eax, [ebp - 0x250]
mov ecx, 0x47e748
push eax
call fcn.00404f50
mov esi, eax
lea eax, [ebp - 0x2b0]
mov dword [ebp - 4], 0xe
or edi, 4
lea ecx, [ebp - 0x1e4]
push eax
mov dword [ebp - 0x1ec], edi
mov dword [ebp - 0x1f0], edi
call dword [sym.imp.MSVCP140.dll_public:_class_std::fpos_struct__Mbstatet____thiscall_std::basic_istream_char__struct_std::char_traits_char__::tellg_void_]
mov edx, dword [eax + 8]
add edx, dword [eax]
mov ecx, dword [eax + 0xc]
adc ecx, dword [eax + 4]
test ecx, ecx
jg 0x41a3df
jl 0x41a3c3
test edx, edx
jae 0x41a3df
neg edx
lea eax, [ebp - 0x13]
adc ecx, 0
neg ecx
push ecx
push edx
push eax
call fcn.004187c0
add esp, 0xc
mov byte [eax - 1], 0x2d
dec eax
jmp 0x41a3ed
push ecx
push edx
lea eax, [ebp - 0x13]
push eax
call fcn.004187c0
add esp, 0xc
lea ecx, [ebp - 0x1e5]
push ecx
lea ecx, [ebp - 0x13]
push ecx
push eax
lea ecx, [ebp - 0x238]
call fcn.00408070
mov eax, dword [ebp - 0x1ec]
or eax, 0x608
cmp dword [esi + 0x14], 0x10
jb 0x41a417
mov esi, dword [esi]
cmp dword [ebp - 0x224], 0x10
lea ecx, [ebp - 0x238]
mov edi, dword [ebp - 0x238]
cmovae ecx, edi
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [esi]
jne 0x41a450
test dl, dl
je 0x41a44c
mov dl, byte [ecx + 1]
cmp dl, byte [esi + 1]
jne 0x41a450
add ecx, 2
add esi, 2
test dl, dl
jne 0x41a430
xor ecx, ecx
jmp 0x41a455
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41a46e
mov byte [ebp - 0x1e5], 1
jmp 0x41a475
mov edi, dword [ebp - 0x238]
mov eax, dword [ebp - 0x1ec]
mov byte [ebp - 0x1e5], 0
test al, 8
je 0x41a4bc
mov ecx, dword [ebp - 0x224]
and eax, 0xfffffff7
mov dword [ebp - 0x1ec], eax
cmp ecx, 0x10
jb 0x41a4bc
inc ecx
mov eax, edi
cmp ecx, 0x1000
jb 0x41a4ac
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a580
push ecx
push edi
call fcn.0041abdb
mov eax, dword [ebp - 0x1ec]
add esp, 8
mov dword [ebp - 4], 0xd
test al, 4
je 0x41a52b
mov ecx, dword [ebp - 0x23c]
and eax, 0xfffffffb
mov dword [ebp - 0x1ec], eax
cmp ecx, 0x10
jb 0x41a510
mov edx, dword [ebp - 0x250]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41a500
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a580
push ecx
push edx
call fcn.0041abdb
mov eax, dword [ebp - 0x1ec]
add esp, 8
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0xf
mov byte [ebp - 0x250], 0
test al, 2
je 0x41a549
and eax, 0xfffffffd
lea ecx, [ebp - 0x280]
mov dword [ebp - 0x1ec], eax
call fcn.00406c90
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 4], 0xb
test al, 1
je 0x41a590
mov ecx, dword [ebp - 0x20c]
cmp ecx, 0x10
jb 0x41a590
mov edx, dword [ebp - 0x220]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41a586
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41a586
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0041abdb
add esp, 8
cmp byte [ebp - 0x1e5], 0
je 0x41a5c9
lea ecx, [ebp - 0x1d4]
call fcn.00417440
test eax, eax
jne 0x41a5c0
push eax
mov eax, dword [ebp - 0x1e4]
lea ecx, [ebp - 0x1e4]
push 2
add ecx, dword [eax + 4]
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool_]
mov byte [ebp - 0x1e5], 1
jmp 0x41a5d0
mov byte [ebp - 0x1e5], 0
lea ecx, [ebp - 0x1e4]
call fcn.00419540
mov al, byte [ebp - 0x1e5]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041abe9
mov esp, ebp
pop ebp
ret