Function at 0x428e00
Capabilities:
Get disk size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x501d0c
mov eax, dword fs:[0]
push eax
sub esp, 0x25c
mov eax, dword [0x567e00]
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 ebx, ecx
mov dword [ebp - 0x20c], ebx
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1fc], eax
mov eax, 0x4ec4ec4f
mov dword [ebp - 0x240], 0
mov ecx, dword [esi + 0x8c]
sub ecx, dword [esi + 0x88]
imul ecx
mov dword [ebp - 0x218], esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push str._KWpsUpdateImpl::Download_:__d.
push str.kupdate::KWpsUpdateImpl::HandleDownload
push 0x69a
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 4
call fcn.00412230
add esp, 0x18
cmp dword [esi + 0x80], 0
jne 0x428eb1
lea eax, [ebp - 0x84]
push 0xe
push eax
call fcn.00417040
add esp, 8
mov ecx, eax
mov edx, 1
jmp 0x428ed3
cmp dword [esi + 0x84], 8
lea eax, [esi + 0x70]
jb 0x428ebf
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.004182e0
add esp, 8
mov ecx, eax
mov edx, 2
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0
mov eax, dword [ecx]
mov dword [ebp - 0x9c], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x98], eax
mov eax, dword [ecx + 8]
mov dword [ebp - 0x94], eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x90], eax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x8c], eax
mov eax, dword [ecx + 0x14]
mov dword [ebp - 0x88], eax
xor eax, eax
mov dword [ebp - 0x208], edx
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
mov dword [ebp - 4], 1
test dl, 2
je 0x428fa4
and edx, 0xfffffffd
mov dword [ebp - 0x208], edx
mov edx, dword [ebp - 0x58]
cmp edx, 8
jb 0x428f8a
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x428f80
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
add esp, 8
mov edx, dword [ebp - 0x208]
xor eax, eax
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 7
mov word [ebp - 0x6c], ax
mov byte [ebp - 4], 2
test dl, 1
je 0x42900c
and edx, 0xfffffffe
mov dword [ebp - 0x208], edx
mov edx, dword [ebp - 0x70]
cmp edx, 8
jb 0x428ff5
mov ecx, dword [ebp - 0x84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x428feb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x428feb
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor eax, eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 7
mov word [ebp - 0x84], ax
cmp dword [ebp - 0x88], 8
lea eax, [ebp - 0x9c]
cmovae eax, dword [ebp - 0x9c]
push eax
call fcn.00415150
xor edi, edi
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x234], edi
add esp, 4
mov dword [ebp - 0x228], edi
mov dword [ebp - 0x224], edi
mov dword [ebp - 0x230], ecx
mov dword [ebp - 0x22c], edx
test eax, eax
jns 0x429077
push eax
push str.Failed_CreateDirEx:_0x_08x.
push str.kupdate::KWpsUpdateImpl::HandleDownload
push 0x6a3
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push edx
call fcn.00412230
add esp, 0x18
lea esi, [edi + 1]
jmp 0x42a09f
mov eax, dword [ebp - 0x218]
mov esi, dword [esi + 0x88]
mov dword [ebp - 0x210], esi
cmp esi, dword [eax + 0x8c]
je 0x42a074
cmp byte [ebx + 8], 0
jne 0x42a516
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x4290a9
mov eax, dword [esi]
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.004162e0
add esp, 8
push eax
lea eax, [ebp - 0xb4]
mov byte [ebp - 4], 3
push eax
mov ecx, ebx
call fcn.0043bd60
mov edx, dword [ebp - 0x118]
mov byte [ebp - 4], 5
cmp edx, 8
jb 0x429110
mov ecx, dword [ebp - 0x12c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x429106
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor eax, eax
mov dword [ebp - 0x11c], 0
push 6
mov dword [ebp - 0xe4], eax
lea ecx, [ebp - 0xe4]
push str..Check
mov dword [ebp - 0x118], 7
mov word [ebp - 0x12c], ax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], 7
mov word [ebp - 0xe4], ax
call fcn.00403a70
push 0
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0xb4]
push eax
call fcn.00451330
mov edx, dword [ebp - 0xd0]
add esp, 0xc
mov byte [ebp - 4], 5
test al, al
je 0x4291c4
cmp edx, 8
jb 0x4291c0
mov ecx, dword [ebp - 0xe4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4291b6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
add esp, 8
xor al, al
jmp 0x429200
cmp edx, 8
jb 0x4291fe
mov ecx, dword [ebp - 0xe4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4291f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
add esp, 8
mov al, 1
mov byte [ebx + 0x69], al
xor eax, eax
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1dc], 7
mov word [ebp - 0x1f0], ax
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0x1c4], 7
mov word [ebp - 0x1d8], ax
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1ac], 7
mov word [ebp - 0x1c0], ax
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x190], 7
mov word [ebp - 0x1a4], ax
mov dword [ebp - 0x18c], 0x7fffffff
mov dword [ebp - 0x188], 0x7fffffff
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x180], 1
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x178], eax
cmp dword [esi + 0x14], 8
mov ecx, esi
mov byte [ebp - 4], 7
jb 0x4292c5
mov ecx, dword [esi]
mov eax, dword [ebp - 0x218]
add eax, 0x58
cmp dword [eax + 0x14], 8
jb 0x4292d6
mov eax, dword [eax]
push ecx
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.00417a40
mov edi, eax
add esp, 0xc
lea eax, [ebp - 0x1f0]
cmp eax, edi
je 0x42939c
mov edx, dword [ebp - 0x1dc]
cmp edx, 8
jb 0x429337
mov ecx, dword [ebp - 0x1f0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42932d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
add esp, 8
mov dword [ebp - 0x1e0], 0
xor eax, eax
mov word [ebp - 0x1f0], ax
mov dword [ebp - 0x1dc], 7
mov eax, dword [edi]
mov dword [ebp - 0x1f0], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x1ec], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x1e8], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x1e4], eax
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x1e0], eax
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x1dc], eax
xor eax, eax
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 7
mov word [edi], ax
mov edx, dword [ebp - 0x148]
cmp edx, 8
jb 0x4293dc
mov ecx, dword [ebp - 0x15c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4293d2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
add esp, 8
cmp dword [ebp - 0x88], 8
lea eax, [ebp - 0x9c]
cmovae eax, dword [ebp - 0x9c]
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.00417670
add esp, 8
cmp dword [ebp - 0xa0], 8
lea ecx, [ebp - 0xb4]
push dword [ebp - 0xa4]
cmovae ecx, dword [ebp - 0xb4]
push ecx
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.004038f0
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 8]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
mov dword [ebp - 0x220], edx
mov dword [ebp - 0x108], edx
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x1f4], edx
mov dword [ebp - 0x104], edx
mov edx, dword [eax + 0x14]
mov dword [ebp - 0x1f8], edx
mov dword [ebp - 0x100], edx
xor edx, edx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], dx
mov eax, dword [ebp - 0x208]
mov edx, dword [ebp - 0x1ac]
or eax, 4
mov dword [ebp - 0x114], edi
mov dword [ebp - 0x110], ebx
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x240], eax
cmp edx, 8
jb 0x4294e1
mov ecx, dword [ebp - 0x1c0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4294d1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
mov ecx, dword [ebp - 0x21c]
add esp, 8
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x130]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x1c0], edi
mov dword [ebp - 0x1bc], ebx
mov dword [ebp - 0x1b8], ecx
mov dword [ebp - 0x1ac], eax
mov byte [ebp - 4], 7
cmp edx, 8
jb 0x42955b
mov ecx, dword [ebp - 0x144]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x429551
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push edx
push ecx
call fcn.004c6f6f
add esp, 8
mov eax, dword [esi + 0x30]
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x1a8], eax
lea eax, [esi + 0x18]
cmp ecx, eax
je 0x429589
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x42957c
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00403a70
xor eax, eax
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0x184], 0x426450
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 7
mov word [ebp - 0xcc], ax
mov byte [ebp - 4], 9
call fcn.00410170
lea edx, [ebp - 0xcc]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x60]
mov ecx, dword [ebp - 0x20c]
xor bl, bl
mov byte [ebp - 0x1f5], bl
call fcn.0040e7a0
mov edx, dword [ebp - 0xcc]
mov dword [ebp - 0x1f4], edx
test al, al
jne 0x429669
mov edx, dword [str.manual]
mov ecx, edx
lea edi, [ecx + 2]
mov edi, edi
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x429600
mov eax, dword [ebp - 0xbc]
lea ebx, [ebp - 0xcc]
sub ecx, edi
sar ecx, 1
cmp dword [ebp - 0xb8], 8
cmovae ebx, dword [ebp - 0x1f4]
cmp eax, ecx
jne 0x429659
test eax, eax
je 0x42965d
movzx ecx, word [ebx]
movzx edi, word [edx]
cmp cx, di
jb 0x429659
sub ebx, edx
cmp cx, di
ja 0x429659
cmp eax, 1
je 0x42965d
movzx ecx, word [ebx + edx + 2]
add edx, 2
dec eax
movzx edi, word [edx]
cmp cx, di
jae 0x429641
mov bl, 1
jmp 0x429663
mov bl, byte [ebp - 0x1f5]
mov edx, dword [ebp - 0x1f4]
mov eax, dword [ebp - 0xb8]
mov byte [ebp - 4], 7
cmp eax, 8
jb 0x4296a7
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x42969d
mov edx, dword [edx - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428fe5
push ecx
push edx
call fcn.004c6f6f
add esp, 8
call fcn.00410170
push eax
mov ecx, dword [eax]
test bl, bl
jne 0x4296b8
call dword [ecx + 0x70]
jmp 0x4296bb
call dword [ecx + 0x6c]
mov ecx, dword [0x56d69c]
mov dword [ebp - 0x188], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x56c48c]
cmp eax, dword [ecx + 4]
jg 0x42a53e
mov eax, dword [0x56bad0]
lea ecx, [ebp - 0x17c]
push ecx
lea ecx, [ebp - 0x180]
push ecx
lea ecx, [ebp - 0x18c]
push ecx
push 0x56bad0
call dword [eax + 0x74]
mov eax, dword [ebp - 0x1fc]
test eax, eax
je 0x429734
lea edi, [eax + 4]
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x1f0]
push ecx
cmp eax, dword [edi + 8]
je 0x42972c
mov ecx, eax
call fcn.004133c0
add dword [edi + 4], 0x18
jmp 0x429734
push eax
mov ecx, edi
call fcn.0040e160
mov ecx, dword [str.wpsupdate.exe]
lea edx, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x429740
sub ecx, edx
lea ebx, [ebp - 0x1c0]
sar ecx, 1
cmp dword [ebp - 0x1ac], 8
mov dword [ebp - 0x220], ecx
cmovae ebx, dword [ebp - 0x1c0]
mov dword [ebp - 0x21c], ebx
test ecx, ecx
jne 0x429789
or ebx, 0xffffffff
cmp dword [ebp - 0x1b0], 0xffffffff
cmovb ebx, dword [ebp - 0x1b0]
jmp 0x429821
mov edx, dword [ebp - 0x1b0]
cmp ecx, edx
ja 0x42984a
sub edx, ecx
or eax, 0xffffffff
cmp edx, eax
cmovb eax, edx
mov edx, dword [str.wpsupdate.exe]
movzx edi, word [edx]
lea ebx, [ebx + eax*2]
mov eax, ebx
mov dword [ebp - 0x1f8], edi
sub eax, edx
movzx edx, word [ebx]
mov dword [ebp - 0x1f4], eax
cmp dx, di
jne 0x429809
mov eax, dword [str.wpsupdate.exe]
mov edi, ecx
mov ecx, edx
mov edx, dword [ebp - 0x1f8]
movzx edx, dx
cmp cx, dx
ja 0x4297f7
cmp edi, 1
je 0x429819
mov ecx, dword [ebp - 0x1f4]
add eax, 2
dec edi
movzx ecx, word [ecx + eax]
movzx edx, word [eax]
cmp cx, dx
jae 0x4297da
mov edi, dword [ebp - 0x1f8]
mov ecx, dword [ebp - 0x220]
mov eax, dword [ebp - 0x1f4]
cmp ebx, dword [ebp - 0x21c]
je 0x42984a
sub ebx, 2
sub eax, 2
jmp 0x4297b7
sub ebx, dword [ebp - 0x21c]
sar ebx, 1
cmp ebx, 0xffffffff
je 0x42984a
cmp dword [ebp - 0x190], 8
lea eax, [ebp - 0x1a4]
push 0
cmovae eax, dword [ebp - 0x1a4]
push eax
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfoUpdateMd5
call fcn.0044d690
add esp, 0xc
mov eax, dword [0x56d69c]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x56c48c]
cmp eax, dword [ecx + 4]
jg 0x42a586
mov eax, dword [0x56bad0]
push 0x56bad0
call dword [eax + 0x2c]
cmp eax, 6
jne 0x429a83
push 0xffffffffffffffff
push dword [0x522c58]
lea ecx, [ebp - 0x1c0]
call fcn.0043c980
cmp eax, 0xffffffff
jne 0x4298b3
push eax
push dword [0x522c5c]
lea ecx, [ebp - 0x1c0]
call fcn.0043c980
cmp eax, 0xffffffff
je 0x429a83
cmp dword [ebp - 0x190], 8
lea ecx, [ebp - 0x1a4]
lea eax, [ebp - 0x1f0]
cmovae ecx, dword [ebp - 0x1a4]
cmp dword [ebp - 0x1dc], 8
push ecx
cmovae eax, dword [ebp - 0x1f0]
push eax
push str._use_curl_download_Download_file:_url___s__md5___s.
push str.kupdate::KWpsUpdateImpl::HandleDownload
push 0x6cd
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 7
call fcn.00412230
mov eax, dword [ebp - 0x180]
add esp, 0x1c
mov ebx, dword [ebp - 0x20c]
mov edi, eax
lea esp, [esp]
cmp edi, eax
je 0x42992b
mov eax, dword [ebp - 0x17c]
test eax, eax
je 0x42992b
imul eax, eax, 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
dec edi
lea edx, [ebp - 0x1a4]
cmp dword [ebp - 0x190], 8
lea ecx, [ebp - 0x1c0]
lea eax, [ebp - 0x1f0]
cmovae edx, dword [ebp - 0x1a4]
cmp dword [ebp - 0x1ac], 8
push edx
cmovae ecx, dword [ebp - 0x1c0]
cmp dword [ebp - 0x1dc], 8
push ecx
cmovae eax, dword [ebp - 0x1f0]
mov ecx, ebx
push eax
call fcn.0043a5a0
mov esi, eax
mov dword [ebp - 0x234], esi
test esi, esi
je 0x42998c
test edi, edi
jle 0x42998a
mov eax, dword [ebp - 0x180]
jmp 0x429910
test esi, esi
mov esi, dword [ebp - 0x210]
je 0x429f4c
cmp dword [ebp - 0xa0], 8
lea eax, [ebp - 0xb4]
mov edi, dword [ebp - 0x234]
cmovae eax, dword [ebp - 0xb4]
push edi
push eax
push str.Failed_download_file:__s___d
push str.kupdate::KWpsUpdateImpl::HandleDownload
push 0x6d2
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 0
call fcn.00412230
add esp, 0x1c
mov dword [ebp - 0x204], 0
mov dword [ebp - 0x200], 0
mov dword [ebp - 0x1fc], 0
push 6
xor eax, eax
mov dword [ebp - 0x84], 0
push str.curldl
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 7
mov word [ebp - 0x84], ax
call fcn.00403a70
mov ecx, dword [ebp - 0x200]
mov byte [ebp - 4], 0xd
cmp ecx, dword [ebp - 0x1fc]
je 0x42a0dd
mov eax, dword [ebp - 0x84]
mov edx, 7
mov dword [ecx], 0
mov dword [ecx], eax
mov eax, dword [ebp - 0x80]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x78]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x74]
mov dword [ecx + 0x10], eax
mov eax, dword [ebp - 0x70]
mov dword [ecx + 0x14], eax
xor eax, eax
add dword [ebp - 0x200], 0x18
mov word [ebp - 0x84], ax
jmp 0x42a0f3
push dword [ebp - 0x188]
cmp dword [ebp - 0x190], 8
lea ecx, [ebp - 0x1a4]
lea eax, [ebp - 0x1f0]
cmovae ecx, dword [ebp - 0x1a4]
cmp dword [ebp - 0x1dc], 8
push ecx
cmovae eax, dword [ebp - 0x1f0]
push eax
push str._use_normal_download_Download_file:_url___s__md5___s__maxspeed___u.
push str.kupdate::KWpsUpdateImpl::HandleDownload
push 0x6de
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 7
call fcn.00412230
add esp, 0x20
call fcn.0042ccb0
cmp dword [ebp - 0xa0], 8
lea edx, [ebp - 0xb4]
mov edi, eax
cmovae edx, dword [ebp - 0xb4]
mov ecx, edx
lea ebx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x429af1
sub ecx, ebx
sar ecx, 1
push ecx
push edx
lea ecx, [edi + 0xc]
call fcn.00403a70
mov dword [edi], 0
call fcn.0042ccb0
push 0
push 0
mov ecx, eax
call fcn.00490770
call fcn.0042ccb0
push 1
push 0x517cdc
lea ecx, [eax + 0x24]
call fcn.00403a70
call fcn.0042ccb0
mov edi, eax
mov dword [ebp - 0xfc], 0
push 0xb
xor eax, eax
mov dword [ebp - 0xec], 0
push str.downloadUrl
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0xe8], 7
mov word [ebp - 0xfc], ax
call fcn.00403a70
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0xfc]
mov ecx, edi
push eax
call fcn.004913e0
mov eax, dword [ebp - 0xe8]
mov byte [ebp - 4], 7
cmp eax, 8
jb 0x429baf
inc eax
lea ecx, [ebp - 0xfc]
push eax
push dword [ebp - 0xfc]
call fcn.00411ac0
call fcn.0042ccb0
push 0
mov ecx, eax
call fcn.00491000
call fcn.0042ccb0
push 0
mov ecx, eax
call fcn.00491170
lea eax, [ebp - 0x1f0]
push eax
call fcn.0043ab40
cmp dword [ebp - 0x1ac], 8
lea eax, [ebp - 0x1c0]
cmovae eax, dword [ebp - 0x1c0]
push eax
call fcn.00416b00
add esp, 8
test al, al
je 0x429c72
mov eax, 0x30
push 0x40
mov word [ebp - 0x54], ax
lea eax, [ebp - 0x52]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
cmp dword [ebp - 0x1ac], 8
lea ecx, [ebp - 0x54]
lea eax, [ebp - 0x1c0]
cmovae eax, dword [ebp - 0x1c0]
push ecx
push eax
call fcn.004ecbf0
cmp dword [ebp - 0x190], 8
lea eax, [ebp - 0x1a4]
cmovae eax, dword [ebp - 0x1a4]
push eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 0x1c
test eax, eax
jne 0x429c72
push str.download_already_finish
push str.kupdate::KWpsUpdateImpl::_checkDownloadNeedSpace
push 0x115c
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 7
call fcn.00412230
jmp 0x429d6a
mov eax, dword [ebp - 0x1a8]
fild dword [ebp - 0x1a8]
test eax, eax
jns 0x429c88
fadd qword [0x51e658]
fstp qword [ebp - 0x214]
fld qword [ebp - 0x214]
fadd st(0), st(0)
fld qword [0x51e620]
fnstcw word [ebp - 0x1f6]
movzx eax, word [ebp - 0x1f6]
or eax, 0xc00
mov dword [ebp - 0x210], eax
fmul st(1), st(0)
fmulp st(1)
fadd qword [0x51e640]
fldcw word [ebp - 0x210]
fistp qword [ebp - 0x214]
mov ebx, dword [ebp - 0x214]
push ebx
push str.download_needspace__d
fldcw word [ebp - 0x1f6]
push str.kupdate::KWpsUpdateImpl::_checkDownloadNeedSpace
push 0x1164
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 7
call fcn.00412230
add esp, 0x18
lea ecx, [ebp - 0x268]
cmp dword [ebp - 0x88], 8
lea eax, [ebp - 0x9c]
cmovae eax, dword [ebp - 0x9c]
xor edi, edi
push ecx
lea ecx, [ebp - 0x250]
push ecx
lea ecx, [ebp - 0x248]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
je 0x429d3b
mov edi, dword [ebp - 0x248]
mov eax, dword [ebp - 0x244]
shrd edi, eax, 0x14
cmp edi, ebx
jb 0x42a3db
push str.enough_disk_free_space
push str.kupdate::KWpsUpdateImpl::_checkDownloadNeedSpace
push 0x1173
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 7
call fcn.00412230
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x218]
add esp, 0x14
mov edi, dword [eax + 0x18]
call fcn.00410170
mov ecx, eax
call fcn.00447c00
test eax, eax
je 0x429de7
cmp dword [ebp - 0x1dc], 8
lea eax, [ebp - 0x1f0]
push 8
cmovae eax, dword [ebp - 0x1f0]
push str.https:__
push 0
push dword [ebp - 0x1e0]
push eax
call fcn.00422e50
add esp, 0x14
test eax, eax
je 0x429de7
mov eax, dword [0x56d69c]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x56ce78]
cmp eax, dword [ecx + 4]
jg 0x42a5ce
cmp byte [0x56ce74], 0
je 0x429de7
test edi, edi
je 0x42a31f
call fcn.00410170
mov ecx, eax
call fcn.00447ee0
test eax, eax
je 0x429e57
call fcn.004555b0
test al, al
jne 0x429e57
cmp dword [ebp - 0x1dc], 8
lea eax, [ebp - 0x1f0]
push 8
cmovae eax, dword [ebp - 0x1f0]
push str.https:__
push 0
push dword [ebp - 0x1e0]
push eax
call fcn.00422e50
add esp, 0x14
test eax, eax
jne 0x429e57
push str.win7_or_before__retry_http_on_fail
push str.kupdate::KWpsUpdateImpl::_downloadRetryHttp
push 0x1192
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 9
call fcn.00412230
add esp, 0x14
mov byte [ebp - 0x238], 1
jmp 0x429e5e
mov byte [ebp - 0x238], 0
lea eax, [ebp - 0x258]
push eax
call fcn.0043bfa0
add esp, 4
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push dword [ebp - 0x238]
mov dword [ebp - 0x224], eax
lea eax, [ebp - 0x1f0]
mov dword [ebp - 0x228], ecx
mov ecx, dword [ebp - 0x20c]
push eax
call fcn.00437340
mov edi, eax
call fcn.0042ccb0
mov ecx, eax
call fcn.00490d30
lea eax, [ebp - 0x260]
push eax
call fcn.0043bfa0
push 0
push edi
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfoDownloadCode
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x230], ecx
mov dword [ebp - 0x22c], eax
call fcn.0044d470
add esp, 0x10
call fcn.0042ccb0
mov ebx, eax
cmp edi, 9
jne 0x429f04
mov edx, 0x517ccc
lea ecx, [edx + 2]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x429ee5
sub edx, ecx
lea ecx, [ebx + 0x24]
sar edx, 1
push edx
push 0x517ccc
call fcn.00403a70
jmp 0x429f46
cmp edi, 0xb
mov eax, 0x517cdc
mov edx, 0x51b278
cmovne edx, eax
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x210], eax
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x429f20
sub ecx, dword [ebp - 0x210]
sar ecx, 1
push ecx
push edx
lea ecx, [ebx + 0x24]
call fcn.00403a70
cmp edi, 0xb
jne 0x42a35b
mov ebx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x190]
cmp eax, 8
jb 0x429f6a
inc eax
lea ecx, [ebp - 0x1a4]
push eax
push dword [ebp - 0x1a4]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x194], 0
mov word [ebp - 0x1a4], ax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x190], 7
cmp eax, 8
jb 0x429fa5
inc eax
lea ecx, [ebp - 0x1c0]
push eax
push dword [ebp - 0x1c0]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x1b0], 0
mov word [ebp - 0x1c0], ax
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x1ac], 7
cmp eax, 8
jb 0x429fe0
inc eax
lea ecx, [ebp - 0x1d8]
push eax
push dword [ebp - 0x1d8]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x1c8], 0
mov word [ebp - 0x1d8], ax
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x1c4], 7
cmp eax, 8
jb 0x42a01b
inc eax
lea ecx, [ebp - 0x1f0]
push eax
push dword [ebp - 0x1f0]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x1e0], 0
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x1dc], 7
mov word [ebp - 0x1f0], ax
mov byte [ebp - 4], 2
call fcn.00403430
mov eax, dword [ebp - 0x218]
add esi, 0x34
mov dword [ebp - 0x210], esi
cmp esi, dword [eax + 0x8c]
jne 0x429095
mov edi, dword [ebp - 0x234]
mov ecx, dword [ebp - 0x230]
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x1fc]
test ebx, ebx
je 0x42a09d
sub ecx, dword [ebp - 0x228]
push 0
sbb edx, dword [ebp - 0x224]
push 0xf4240
push edx
push ecx
mov dword [ebx], edi
call fcn.004c7870
mov dword [ebx + 0x10], eax
xor esi, esi
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x42a0bd
inc ecx
push ecx
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x9c]
call fcn.00411ac0
mov eax, esi
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.004c6f8b
mov esp, ebp
pop ebp
ret 8
lea eax, [ebp - 0x84]
push eax
push ecx
lea ecx, [ebp - 0x204]
call fcn.0040e2d0
mov edx, dword [ebp - 0x70]
mov byte [ebp - 4], 0xc
cmp edx, 8
jb 0x42a131
mov ecx, dword [ebp - 0x84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42a127
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42a20d
push edx
push ecx
call fcn.004c6f6f
add esp, 8
cmp dword [ebp - 0x1dc], 8
lea edx, [ebp - 0x1f0]
mov dword [ebp - 0x6c], 0
cmovae edx, dword [ebp - 0x1f0]
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 7
mov word [ebp - 0x6c], ax
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42a165
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x6c]
call fcn.00403a70
mov ecx, dword [ebp - 0x200]
mov byte [ebp - 4], 0xe
cmp ecx, dword [ebp - 0x1fc]
je 0x42a1cd
mov eax, dword [ebp - 0x6c]
mov edx, 7
mov dword [ecx], 0
mov dword [ecx], eax
mov eax, dword [ebp - 0x68]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x64]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x60]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x5c]
mov dword [ecx + 0x10], eax
mov eax, dword [ebp - 0x58]
mov dword [ecx + 0x14], eax
xor eax, eax
add dword [ebp - 0x200], 0x18
mov word [ebp - 0x6c], ax
jmp 0x42a1e0
lea eax, [ebp - 0x6c]
push eax
push ecx
lea ecx, [ebp - 0x204]
call fcn.0040e2d0
mov edx, dword [ebp - 0x58]
mov byte [ebp - 4], 0xc
cmp edx, 8
jb 0x42a21d
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42a213
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x42a213
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004c6f6f
add esp, 8
lea eax, [ebp - 0x174]
push edi
push eax
call fcn.0043cac0
add esp, 8
mov edx, eax
mov ecx, dword [ebp - 0x200]
mov byte [ebp - 4], 0xf
cmp ecx, dword [ebp - 0x1fc]
je 0x42a293
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov eax, dword [edx + 8]
mov dword [ecx + 8], eax
mov eax, dword [edx + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [edx + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
xor eax, eax
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 7
mov word [edx], ax
add dword [ebp - 0x200], 0x18
jmp 0x42a2a0
push edx
push ecx
lea ecx, [ebp - 0x204]
call fcn.0040e2d0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0xc
call fcn.00403430
call fcn.0042c9e0
lea ecx, [ebp - 0x204]
push ecx
mov ecx, eax
call fcn.0044f370
mov esi, dword [ebp - 0x204]
test esi, esi
je 0x42a415
mov edi, dword [ebp - 0x200]
cmp esi, edi
je 0x42a2f4
lea ebx, [ebx]
mov ecx, esi
call fcn.00403430
add esi, 0x18
cmp esi, edi
jne 0x42a2e0
mov esi, dword [ebp - 0x204]
mov ecx, dword [ebp - 0x1fc]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x204]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
call fcn.00411a80
jmp 0x42a415
push str.can_not_use_http
push str.kupdate::KWpsUpdateImpl::_checkDownloadScheme
push 0x1183
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 0
call fcn.00412230
push 0
push 0xd
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfoDownloadCode
call fcn.0044d470
lea eax, [ebp - 0x1f0]
push 0xd
push eax
call fcn.00426190
jmp 0x42a412
cmp dword [ebp - 0xa0], 8
lea eax, [ebp - 0xb4]
push edi
cmovae eax, dword [ebp - 0xb4]
push eax
push str.Failed_download_file:__s___d
push str.kupdate::KWpsUpdateImpl::HandleDownload
push 0x705
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 0
call fcn.00412230
lea eax, [ebp - 0x1f0]
push edi
push eax
call fcn.00426190
mov ebx, dword [ebp - 0x1fc]
add esp, 0x24
test ebx, ebx
je 0x42a3d1
mov ecx, dword [ebp - 0x230]
sub ecx, dword [ebp - 0x228]
mov edx, dword [ebp - 0x22c]
sbb edx, dword [ebp - 0x224]
push 0
push 0xf4240
push edx
push ecx
mov dword [ebx], edi
call fcn.004c7870
mov dword [ebx + 0x10], eax
cmp edi, 5
jne 0x42a415
lea esi, [edi - 3]
jmp 0x42a41a
push 0
push 0xc
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfoDownloadCode
call fcn.0044d470
lea eax, [ebp - 0x1f0]
push 0xc
push eax
call fcn.00426190
push str.not_enough_disk_free_space__download_fail
push str.kupdate::KWpsUpdateImpl::_checkDownloadNeedSpace
push 0x116e
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 0
call fcn.00412230
add esp, 0x28
mov esi, 1
mov eax, dword [ebp - 0x190]
cmp eax, 8
jb 0x42a438
inc eax
lea ecx, [ebp - 0x1a4]
push eax
push dword [ebp - 0x1a4]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x194], 0
mov word [ebp - 0x1a4], ax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x190], 7
cmp eax, 8
jb 0x42a473
inc eax
lea ecx, [ebp - 0x1c0]
push eax
push dword [ebp - 0x1c0]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x1b0], 0
mov word [ebp - 0x1c0], ax
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x1ac], 7
cmp eax, 8
jb 0x42a4ae
inc eax
lea ecx, [ebp - 0x1d8]
push eax
push dword [ebp - 0x1d8]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x1c8], 0
mov word [ebp - 0x1d8], ax
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x1c4], 7
cmp eax, 8
jb 0x42a4e9
inc eax
lea ecx, [ebp - 0x1f0]
push eax
push dword [ebp - 0x1f0]
call fcn.00411ac0
xor eax, eax
mov dword [ebp - 0x1e0], 0
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x1dc], 7
mov word [ebp - 0x1f0], ax
call fcn.00403430
jmp 0x42a09f
push str.Work_thread_exit.
push str.kupdate::KWpsUpdateImpl::HandleDownload
push 0x6ac
push str.D:_rc_bug_mas_v12_2408Coding_supportwpsupdateUpdateClient_srcmiscKWpsUpdateImpl.cpp
push 5
call fcn.00412230
add esp, 0x14
mov esi, 1
jmp 0x42a09f
push 0x56c48c
call fcn.004c7345
add esp, 4
cmp dword [0x56c48c], 0xffffffff
jne 0x4296e1
mov ecx, 0x56bad0
mov byte [ebp - 4], 0xa
call fcn.0043e410
push 0x511320
call fcn.004c71fd
push 0x56c48c
mov byte [ebp - 4], 7
call fcn.004c72fb
add esp, 8
jmp 0x4296e1
push 0x56c48c
call fcn.004c7345
add esp, 4
cmp dword [0x56c48c], 0xffffffff
jne 0x42986a
mov ecx, 0x56bad0
mov byte [ebp - 4], 0xb
call fcn.0043e410
push 0x511320
call fcn.004c71fd
push 0x56c48c
mov byte [ebp - 4], 7
call fcn.004c72fb
add esp, 8
jmp 0x42986a
push 0x56ce78
call fcn.004c7345
add esp, 4
cmp dword [0x56ce78], 0xffffffff
jne 0x429dd6
push 0
lea eax, [ebp - 0x23c]
mov byte [ebp - 4], 0x11
push eax
push str.HKCUSoftwareKingsoftOffice6.0CommonupdateinfoDownloadBanHTTP
mov dword [ebp - 0x23c], 1
call fcn.0044cd70
cmp dword [ebp - 0x23c], 1
push 0x56ce78
sete byte [0x56ce74]
mov byte [ebp - 4], 7
call fcn.004c72fb
add esp, 0x10
jmp 0x429dd6