Function at 0x43c260
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x582bc4
mov eax, dword fs:[0]
push eax
sub esp, 0x98
mov eax, dword [0x6459b8]
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 esi, ecx
call fcn.0043bc10
push 1
lea eax, [ebp - 0x94]
push eax
mov ecx, esi
call fcn.00439c50
xor ebx, ebx
mov dword [ebp - 4], ebx
mov ecx, dword [ebp - 0x94]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov dword [esi + 0x9c], ebx
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x48], bl
mov byte [ebp - 4], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x8c], esp
push 0xffffffffffffffff
push 0x595170
call fcn.0056bf21
mov byte [ebp - 4], 2
lea edx, [ebp - 0x48]
push edx
mov byte [ebp - 4], 1
mov ecx, 0x64b2f0
call fcn.0040c7b0
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x64]
push ecx
call fcn.00435710
add esp, 8
mov byte [ebp - 4], 3
push ebx
push ebx
push ebx
push str.xmlrequest
mov ecx, 0x64b97c
call fcn.00442b50
mov ecx, 0x64b97c
call fcn.00441750
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
jae 0x43c335
lea eax, [ebp - 0x64]
push ebx
push ebx
push eax
push 0x595070
mov ecx, 0x64b97c
call fcn.00442b50
push ebx
push ebx
push ebx
push str.data
mov ecx, 0x64b97c
call fcn.00442b50
mov ecx, 0x64b97c
call fcn.00441750
push ebx
push ebx
push ebx
push 0x595054
mov ecx, 0x64b97c
call fcn.00442b50
mov eax, dword [esi + 0x48]
mov edx, dword [0x64b9a0]
push eax
push 0x59504c
push edx
mov ecx, 0x64b97c
call fcn.004425e0
lea eax, [ebp - 0x84]
push eax
mov ecx, 0x64b3a8
call fcn.00405580
mov byte [ebp - 4], 4
push eax
lea ecx, [esi + 0x10]
call fcn.004059f0
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c3d3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, dword [esi + 0x10]
mov ecx, dword [0x64b9a0]
push edi
push 0x59503c
push ecx
mov ecx, 0x64b97c
call fcn.004425e0
push 0xc
push str.Foxit_Reader
lea ecx, [esi + 0x4c]
call fcn.004050c0
mov esi, dword [esi + 0x4c]
mov edx, dword [0x64b9a0]
push esi
push 0x595030
push edx
mov ecx, 0x64b97c
call fcn.004425e0
lea eax, [ebp - 0x84]
push eax
call fcn.005732a0
add esp, 4
mov byte [ebp - 4], 6
mov eax, dword [eax]
cmp eax, ebx
je 0x43c434
add eax, 0xc
jmp 0x43c439
mov eax, 0x616ba8
push eax
lea ecx, [ebp - 0x88]
call fcn.00406440
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x84]
call fcn.0056bf07
call fcn.00444998
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x43c46e
push 0x80004005
call fcn.00403760
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x84], eax
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x88]
cmp dword [eax - 0xc], ebx
jge 0x43c494
or eax, 0xffffffff
jmp 0x43c4b3
push 0x595d88
push eax
call fcn.00546303
add esp, 8
cmp eax, ebx
jne 0x43c4ab
or eax, 0xffffffff
jmp 0x43c4b3
sub eax, dword [ebp - 0x88]
sar eax, 1
add eax, 5
push eax
lea ecx, [ebp - 0x8c]
push ecx
lea ecx, [ebp - 0x88]
call fcn.00405980
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x84]
call fcn.004059f0
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x8c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x43c4ff
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x84]
mov edx, dword [0x64b9a0]
push ecx
push 0x59501c
push edx
mov ecx, 0x64b97c
call fcn.004425e0
mov eax, dword [0x64b9a0]
push 0x616ba8
push str.edition
push eax
mov ecx, 0x64b97c
call fcn.004425e0
push ebx
mov ecx, 0x64b97c
push ebx
cmp dword [ebp + 8], ebx
je 0x43c549
push 0x59b564
jmp 0x43c54e
push str.Installation
push str.reason4failure
call fcn.00442b50
push 0x616ba8
lea ecx, [ebp - 0x98]
call fcn.00406440
mov byte [ebp - 4], 0xd
push ecx
mov dword [ebp - 0xa4], esp
mov ecx, esp
push 0xffffffffffffffff
push 0x595e08
call fcn.0056cdab
mov byte [ebp - 4], 0xe
push ecx
mov dword [ebp - 0xa0], esp
mov ecx, esp
push 0xffffffffffffffff
push str.SOFTWAREFoxit_SoftwareFoxit_ReaderFoxit_Information
call fcn.0056cdab
mov byte [ebp - 4], 0xf
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x8c]
push ecx
mov byte [ebp - 4], 0xd
call fcn.00437080
add esp, 0x10
mov byte [ebp - 4], 0x10
mov eax, dword [eax]
cmp eax, ebx
je 0x43c5cb
lea ecx, [eax + 0xc]
cmp ecx, ebx
jne 0x43c5d0
xor eax, eax
jmp 0x43c5e4
mov ecx, 0x616ba8
mov eax, ecx
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
cmp dx, bx
jne 0x43c5d5
sub eax, esi
sar eax, 1
push eax
push ecx
lea ecx, [ebp - 0x98]
call fcn.004050c0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x8c]
call fcn.0056bf07
push ebx
push ebx
push ebx
push str.agent
mov ecx, 0x64b97c
call fcn.00442b50
mov edx, dword [ebp - 0x98]
mov eax, dword [0x64b9a0]
push edx
push 0x59504c
push eax
mov ecx, 0x64b97c
call fcn.004425e0
push 0x616ba8
lea ecx, [ebp - 0x90]
call fcn.00406440
mov byte [ebp - 4], 0x11
push 5
push str.Foxit
lea ecx, [ebp - 0x90]
call fcn.004050c0
mov ecx, dword [ebp - 0x90]
mov edx, dword [0x64b9a0]
push ecx
push 0x595030
push edx
mov ecx, 0x64b97c
call fcn.004425e0
lea eax, [ebp - 0x9c]
push eax
mov ecx, 0x64b97c
call fcn.00405520
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x9c]
mov edi, 7
xor ecx, ecx
mov eax, edx
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x70], ebx
mov word [ebp - 0x80], cx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x43c6a2
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x80]
call fcn.00405e70
mov byte [ebp - 4], 0x13
lea edx, [ebp - 0x80]
push edx
lea eax, [ebp - 0x2c]
push eax
call fcn.004358d0
add esp, 8
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x6c], 8
jb 0x43c6e5
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.00443897
add esp, 4
mov eax, dword [ebp - 0x94]
push ebx
push 0x1001
xor edx, edx
push eax
mov ecx, 0x64b934
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x70], ebx
mov word [ebp - 0x80], dx
call fcn.00459d7e
test eax, eax
jne 0x43c837
mov byte [ebp - 4], 0x12
cmp dword [ebp - 0x18], 0x10
jb 0x43c726
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.00443897
add esp, 4
mov esi, 0xf
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x43c75a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c780
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x98]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c7a6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c7cc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x88]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c7f2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x50], 8
jb 0x43c808
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.00443897
add esp, 4
xor edx, edx
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x54], ebx
mov word [ebp - 0x64], dx
mov byte [ebp - 4], bl
cmp dword [ebp - 0x34], 0x10
jb 0x43c829
mov eax, dword [ebp - 0x48]
push eax
call fcn.00443897
add esp, 4
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x48], bl
jmp 0x43c9a1
mov edx, dword [0x64b934]
mov eax, dword [edx + 0x2c]
push ebx
push ebx
push ebx
mov ecx, 0x64b934
call eax
mov eax, dword [ebp - 0x2c]
mov edi, 0x10
cmp dword [ebp - 0x18], edi
jae 0x43c85a
lea eax, [ebp - 0x2c]
mov ecx, dword [ebp - 0x1c]
push ecx
push eax
mov ecx, 0x64b934
call fcn.004595d2
mov ecx, 0x64b934
call fcn.004596be
mov ecx, 0x64b934
call fcn.00459836
mov byte [ebp - 4], 0x12
cmp dword [ebp - 0x18], edi
jb 0x43c892
mov edx, dword [ebp - 0x2c]
push edx
call fcn.00443897
add esp, 4
mov esi, 0xf
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c8c6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x90]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c8ec
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x98]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c912
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c938
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x88]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c95e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x50], 8
jb 0x43c974
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.00443897
add esp, 4
xor edx, edx
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], ebx
mov word [ebp - 0x64], dx
mov byte [ebp - 4], bl
cmp dword [ebp - 0x34], edi
jb 0x43c998
mov eax, dword [ebp - 0x48]
push eax
call fcn.00443897
add esp, 4
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x48], bl
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x94]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43c9ca
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
xor eax, eax
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.00546bde
mov esp, ebp
pop ebp
ret 4