Function at 0x431040
Capabilities:
Access the windows event log
Schedule task via itaskservice

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xb0
mov eax, dword [0x4a0088]
xor eax, ebp
mov dword [esp + 0xa8], eax
mov edi, 0x80070057
test ecx, ecx
je 0x43119a
cmp word [ecx], 0
je 0x43119a
mov dword [esp + 4], ecx
mov dword [esp], edx
xor ebx, ebx
lea eax, [esp + 0x7c]
mov dword [eax], ebx
push eax
push 0x45e020
push 1
push ebx
push 0x45e030
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x4311b2
mov edi, dword [esp + 0x7c]
xorps xmm0, xmm0
movaps xmmword [esp + 0x60], xmm0
movaps xmmword [esp + 0x50], xmm0
movaps xmmword [esp + 0x40], xmm0
movaps xmmword [esp + 0x30], xmm0
mov eax, dword [edi]
mov ecx, dword [eax + 0x28]
call dword [section..00cfg]
sub esp, 0x44
movaps xmm0, xmmword [esp + 0xa4]
movups xmmword [esp + 0x34], xmm0
movaps xmm0, xmmword [esp + 0x94]
movups xmmword [esp + 0x24], xmm0
movaps xmm0, xmmword [esp + 0x84]
movups xmmword [esp + 0x14], xmm0
movaps xmm0, xmmword [esp + 0x74]
movups xmmword [esp + 4], xmm0
mov dword [esp], edi
call ecx
test eax, eax
js 0x431255
xor esi, esi
mov dword [esp + 0x2c], esi
push 0x49afd8
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esp + 0xc], eax
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x2c], esi
test ebx, ebx
je 0x431139
mov eax, dword [ebx]
mov ecx, dword [eax + 8]
call dword [section..00cfg]
push ebx
call ecx
mov eax, dword [edi]
mov ecx, dword [eax + 0x1c]
call dword [section..00cfg]
lea eax, [esp + 0x2c]
push eax
mov esi, dword [esp + 0x10]
push esi
push edi
call ecx
test eax, eax
jns 0x43130f
xor edi, edi
cmp eax, 0x80070002
cmovne edi, eax
test esi, esi
je 0x43116e
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov esi, dword [esp + 0x2c]
test esi, esi
je 0x431184
mov eax, dword [esi]
mov ecx, dword [eax + 8]
call dword [section..00cfg]
push esi
call ecx
mov esi, dword [esp + 0x7c]
test esi, esi
je 0x43119a
mov eax, dword [esi]
mov ecx, dword [eax + 8]
call dword [section..00cfg]
push esi
call ecx
mov ecx, dword [esp + 0xa8]
xor ecx, ebp
call fcn.0044f7d0
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, eax
mov eax, dword [sym.default_browser_agent.exe_gWinEventLogSourceName]
mov dword [esp + 0xc], eax
mov ecx, 0x148
mov edx, str.RemoveTasks
mov eax, str.0x_X_in__S:_d
push ecx
push edx
push edi
push eax
call fcn.00451d80
add esp, 0x10
lea ecx, [eax + 1]
mov dword [esp], ecx
lea ecx, [eax + eax]
add ecx, 2
xor esi, esi
dec esi
cmp eax, 0xffffffff
cmovge esi, ecx
push esi
call fcn.0044f9c3
add esp, 4
push esi
mov esi, eax
push ebx
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x148
push eax
mov eax, str.RemoveTasks
push eax
push edi
mov eax, str.0x_X_in__S:_d
push eax
push 0xffffffffffffffff
push dword [esp + 0x14]
push esi
call fcn.00451de0
add esp, 0x1c
push dword [esp + 0xc]
push ebx
call dword [sym.imp.advapi32.dll_RegisterEventSourceW]
test eax, eax
je 0x431301
mov ebx, eax
lea eax, [esp + 0x90]
mov dword [eax], esi
xor ecx, ecx
xor edx, edx
inc edx
push ecx
push eax
push ecx
push edx
push ecx
push edi
push ecx
push edx
jmp 0x4312f3
mov edi, eax
mov eax, dword [sym.default_browser_agent.exe_gWinEventLogSourceName]
mov dword [esp + 0xc], eax
mov ecx, 0x14a
mov edx, str.RemoveTasks
mov eax, str.0x_X_in__S:_d
push ecx
push edx
push edi
push eax
call fcn.00451d80
add esp, 0x10
lea ecx, [eax + 1]
mov dword [esp], ecx
lea ecx, [eax + eax]
add ecx, 2
xor ebx, ebx
dec ebx
cmp eax, 0xffffffff
cmovge ebx, ecx
push ebx
call fcn.0044f9c3
add esp, 4
mov esi, eax
xor eax, eax
push ebx
push eax
xor ebx, ebx
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x14a
push eax
mov eax, str.RemoveTasks
push eax
push edi
mov eax, str.0x_X_in__S:_d
push eax
push 0xffffffffffffffff
push dword [esp + 0x14]
push esi
call fcn.00451de0
add esp, 0x1c
push dword [esp + 0xc]
push ebx
call dword [sym.imp.advapi32.dll_RegisterEventSourceW]
test eax, eax
je 0x431301
mov ebx, eax
lea eax, [esp + 0x90]
mov dword [eax], esi
xor ecx, ecx
inc ecx
xor edx, edx
push edx
push eax
push edx
push ecx
push edx
push edi
push edx
push ecx
push ebx
call dword [sym.imp.advapi32.dll_ReportEventW]
push ebx
call dword [sym.imp.advapi32.dll_DeregisterEventSource]
push esi
call fcn.0044f120
add esp, 4
jmp 0x431184
mov esi, dword [esp + 0x2c]
lea edi, [esp + 0x28]
mov dword [edi], 0
mov eax, dword [esi]
mov ecx, dword [eax + 0x38]
call dword [section..00cfg]
push edi
push 1
push esi
call ecx
test eax, eax
jns 0x43138e
mov edi, eax
mov eax, dword [sym.default_browser_agent.exe_gWinEventLogSourceName]
mov dword [esp], eax
mov ecx, 0x15b
mov edx, str.RemoveTasks
mov eax, str.0x_X_in__S:_d
push ecx
push edx
push edi
push eax
call fcn.00451d80
add esp, 0x10
lea ecx, [eax + 1]
mov dword [esp + 4], ecx
lea ecx, [eax + eax]
add ecx, 2
xor ebx, ebx
dec ebx
cmp eax, 0xffffffff
cmovge ebx, ecx
push ebx
call fcn.0044f9c3
add esp, 4
mov esi, eax
xor eax, eax
push ebx
push eax
xor ebx, ebx
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x15b
jmp 0x43140d
lea esi, [esp + 0x24]
mov dword [esi], 0
mov edi, dword [esp + 0x28]
mov eax, dword [edi]
mov ecx, dword [eax + 0x1c]
call dword [section..00cfg]
push esi
push edi
call ecx
test eax, eax
jns 0x431486
mov edi, eax
mov eax, dword [sym.default_browser_agent.exe_gWinEventLogSourceName]
mov dword [esp], eax
mov ecx, 0x15e
mov edx, str.RemoveTasks
mov eax, str.0x_X_in__S:_d
push ecx
push edx
push edi
push eax
call fcn.00451d80
add esp, 0x10
lea ecx, [eax + 1]
mov dword [esp + 4], ecx
lea ecx, [eax + eax]
add ecx, 2
xor ebx, ebx
dec ebx
cmp eax, 0xffffffff
cmovge ebx, ecx
push ebx
call fcn.0044f9c3
add esp, 4
mov esi, eax
xor eax, eax
push ebx
push eax
xor ebx, ebx
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x15e
push eax
mov eax, str.RemoveTasks
push eax
push edi
mov eax, str.0x_X_in__S:_d
push eax
push 0xffffffffffffffff
push dword [esp + 0x18]
push esi
call fcn.00451de0
add esp, 0x1c
push dword [esp]
push ebx
call dword [sym.imp.advapi32.dll_RegisterEventSourceW]
test eax, eax
je 0x43145e
mov ebx, eax
lea eax, [esp + 0x90]
mov dword [eax], esi
xor ecx, ecx
inc ecx
xor edx, edx
push edx
push eax
push edx
push ecx
push edx
push edi
push edx
push ecx
push ebx
call dword [sym.imp.advapi32.dll_ReportEventW]
push ebx
call dword [sym.imp.advapi32.dll_DeregisterEventSource]
push esi
call fcn.0044f120
add esp, 4
mov esi, dword [esp + 0x28]
test esi, esi
je 0x43147d
mov eax, dword [esi]
mov ecx, dword [eax + 8]
call dword [section..00cfg]
push esi
call ecx
mov esi, dword [esp + 0xc]
jmp 0x431163
xor eax, eax
lea edi, [esp + 0x90]
mov dword [edi], eax
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], 7
mov word [edi], 0
sub esp, 0xc
mov al, byte [esp + 0x8c]
mov byte [esp + 4], al
mov dword [esp + 8], 0x49bbc8
mov dword [esp], 0x1e
mov ecx, edi
call fcn.00452fa0
mov ebx, dword [esp + 4]
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_wcslen
add esp, 4
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
mov esi, edx
sub esi, ecx
cmp esi, eax
jb 0x4317d1
lea ebx, [ecx + eax]
mov dword [esp + 0xa0], ebx
cmp edx, 8
jb 0x4314f9
mov edi, dword [esp + 0x90]
lea ecx, [edi + ecx*2]
add eax, eax
push eax
push dword [esp + 8]
push ecx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov word [edi + ebx*2], 0
cmp dword [esp + 0x24], 0
jle 0x4316bb
xor esi, esi
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
mov edi, dword [esp + 0x28]
mov dword [esp + 0x20], 0
inc esi
mov word [esp + 0x80], 3
mov dword [esp + 0x88], esi
mov eax, dword [edi]
mov ecx, dword [eax + 0x20]
call dword [section..00cfg]
sub esp, 0x18
movups xmm0, xmmword [esp + 0x98]
movups xmmword [esp + 4], xmm0
lea eax, [esp + 0x38]
mov dword [esp + 0x14], eax
mov dword [esp], edi
call ecx
mov edi, eax
lea ebx, [esp + 0x80]
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test edi, edi
js 0x4315f4
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x20]
mov eax, dword [esi]
mov ecx, dword [eax + 0x1c]
call dword [section..00cfg]
push ebx
push esi
call ecx
test eax, eax
js 0x4315fd
mov edi, dword [esp + 0x80]
cmp dword [esp], 0
je 0x43160a
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_wcslen
add esp, 4
mov ebx, eax
mov esi, dword [esp + 4]
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_wcslen
add esp, 4
cmp eax, ebx
ja 0x431684
lea ecx, [edi + ebx*2]
add eax, eax
sub ecx, eax
push esi
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscmp]
add esp, 8
test eax, eax
jne 0x431684
mov ebx, dword [esp + 0x80]
jmp 0x431660
mov dword [esp + 8], edi
jmp 0x431699
mov dword [esp + 8], eax
mov esi, dword [esp + 0x14]
jmp 0x431699
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_wcslen
add esp, 4
mov edx, dword [esp + 0xa0]
cmp eax, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], eax
cmovb edx, eax
test edx, edx
je 0x431654
cmp dword [esp + 0xa4], 8
lea ebx, [esp + 0x90]
jb 0x431643
mov ebx, dword [esp + 0x90]
xor ecx, ecx
movzx esi, word [ebx + ecx*2]
cmp si, word [edi + ecx*2]
jne 0x431684
inc ecx
cmp edx, ecx
jne 0x431645
mov ebx, edi
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x1c], eax
jne 0x431684
mov esi, dword [esp + 0x2c]
mov eax, dword [esi]
mov ecx, dword [eax + 0x3c]
call dword [section..00cfg]
push 0
push ebx
push esi
call ecx
test eax, eax
mov ecx, dword [esp + 8]
cmovs ecx, eax
mov dword [esp + 8], ecx
jmp 0x43168a
mov al, 1
mov dword [esp + 0x10], eax
test edi, edi
mov esi, dword [esp + 0x14]
je 0x431699
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edi, dword [esp + 0x20]
test edi, edi
je 0x4316af
mov eax, dword [edi]
mov ecx, dword [eax + 8]
call dword [section..00cfg]
push edi
call ecx
cmp esi, dword [esp + 0x24]
jl 0x43152f
jmp 0x4316cb
mov dword [esp + 8], 0
mov dword [esp + 0x10], 0
test byte [esp + 0x10], 1
mov eax, dword [esp + 8]
jne 0x431781
test eax, eax
js 0x431781
xor esi, esi
mov dword [esp + 0x20], esi
push 0x49b034
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esp], eax
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x20], esi
test ebx, ebx
je 0x431714
mov eax, dword [ebx]
mov ecx, dword [eax + 8]
call dword [section..00cfg]
push ebx
call ecx
mov eax, dword [edi]
mov ecx, dword [eax + 0x1c]
call dword [section..00cfg]
lea eax, [esp + 0x20]
push eax
push dword [esp + 4]
push edi
call ecx
test eax, eax
js 0x4317fb
mov esi, dword [esp + 0x20]
mov eax, dword [esi]
mov ecx, dword [eax + 0x30]
call dword [section..00cfg]
push 0
push dword [esp + 0x10]
push esi
call ecx
test eax, eax
js 0x431852
mov bl, 1
mov esi, dword [esp]
test esi, esi
je 0x431763
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov esi, dword [esp + 0x20]
test esi, esi
je 0x431779
mov eax, dword [esi]
mov ecx, dword [eax + 8]
call dword [section..00cfg]
push esi
call ecx
test bl, bl
mov eax, dword [esp + 8]
je 0x431783
mov edi, eax
mov eax, dword [esp + 0xa4]
cmp eax, 8
jb 0x431467
mov ecx, dword [esp + 0x90]
lea esi, [eax + eax]
add esi, 2
cmp esi, 0x1000
jb 0x4317c2
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x43190d
add eax, eax
add eax, 0x25
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.0044f9c3
add esp, 8
jmp 0x431467
sub esp, 0x10
mov cl, byte [esp + 0x90]
mov byte [esp + 4], cl
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp], eax
lea ecx, [esp + 0xa0]
call fcn.004530b0
jmp 0x431512
mov edi, eax
mov eax, dword [sym.default_browser_agent.exe_gWinEventLogSourceName]
mov dword [esp + 4], eax
mov ecx, 0x194
mov edx, str.RemoveTasks
mov eax, str.0x_X_in__S:_d
push ecx
push edx
push edi
push eax
call fcn.00451d80
add esp, 0x10
lea ebx, [eax + 1]
lea ecx, [eax + eax]
add ecx, 2
xor esi, esi
dec esi
cmp eax, 0xffffffff
cmovge esi, ecx
push esi
call fcn.0044f9c3
add esp, 4
xor ecx, ecx
push esi
mov esi, eax
push ecx
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x194
jmp 0x4318a7
mov edi, eax
mov eax, dword [sym.default_browser_agent.exe_gWinEventLogSourceName]
mov dword [esp + 4], eax
mov ecx, 0x195
mov edx, str.RemoveTasks
mov eax, str.0x_X_in__S:_d
push ecx
push edx
push edi
push eax
call fcn.00451d80
add esp, 0x10
lea ebx, [eax + 1]
lea ecx, [eax + eax]
add ecx, 2
xor esi, esi
dec esi
cmp eax, 0xffffffff
cmovge esi, ecx
push esi
call fcn.0044f9c3
add esp, 4
xor ecx, ecx
push esi
mov esi, eax
push ecx
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x195
push eax
mov eax, str.RemoveTasks
push eax
push edi
mov eax, str.0x_X_in__S:_d
push eax
push 0xffffffffffffffff
push ebx
push esi
call fcn.00451de0
add esp, 0x1c
push dword [esp + 4]
xor eax, eax
push eax
call dword [sym.imp.advapi32.dll_RegisterEventSourceW]
test eax, eax
je 0x4318f8
mov ebx, eax
lea eax, [esp + 0x80]
mov dword [eax], esi
xor ecx, ecx
inc ecx
xor edx, edx
push edx
push eax
push edx
push ecx
push edx
push edi
push edx
push ecx
push ebx
call dword [sym.imp.advapi32.dll_ReportEventW]
push ebx
call dword [sym.imp.advapi32.dll_DeregisterEventSource]
mov eax, esi
mov esi, dword [esp]
push eax
call fcn.0044f120
add esp, 4
xor ebx, ebx
jmp 0x431758
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3