Function at 0x43f870
Capabilities:
Clear windows event logs

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x43ffca
sub esp, 0x60
mov eax, dword [0x67e12c]
test eax, eax
jl 0x43ffb3
mov ecx, dword [esp + 0x64]
test ecx, ecx
jle 0x43ffb3
mov dword [esp + 0x24], eax
movzx edx, byte [0x662748]
test dl, dl
je 0x43f8f7
nop
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], ecx
sar ecx, 0x1f
mov dword [esp + 0x48], ecx
mov byte [esp], 4
mov dword [esp + 4], 1
lea ecx, [esp + 0x44]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.00453080
nop
call fcn.004602a0
mov eax, dword [0x658b94]
test eax, eax
setne cl
mov edx, dword [0x658b98]
test edx, edx
setne bl
or ebx, ecx
mov ecx, dword [esp + 4]
mov ebp, dword [esp + 4]
mov dword [esp + 0x20], ebp
mov esi, dword [esp]
test bl, bl
je 0x43f985
mov dword [esp + 0x40], edx
mov ebx, esi
sub esi, eax
mov edi, eax
mov eax, dword [esp + 0x24]
mul esi
mov dword [esp + 0x3c], edx
mov ebp, dword [0x658b9c]
mov dword [esp + 0x38], ebp
add ebp, eax
mov edx, dword [0x658ba0]
mov dword [0x658b9c], ebp
mov ebp, ebx
sub ebx, edi
mov ebx, dword [esp + 0x40]
sbb ecx, ebx
mov ebx, dword [esp + 0x24]
mov edi, ebx
sar ebx, 0x1f
imul ebx, esi
mov esi, dword [esp + 0x3c]
add ebx, esi
imul ecx, edi
add ebx, ecx
mov esi, dword [esp + 0x38]
add esi, eax
adc edx, ebx
mov dword [0x658ba0], edx
jmp 0x43f98b
mov ebp, esi
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov dword [0x658b98], edx
mov dword [0x658b94], ebp
mov edx, dword [esp + 0x64]
lea ebx, [edx + 0x1f]
sar ebx, 0x1f
shr ebx, 0x1b
lea ebx, [ebx + edx + 0x1f]
sar ebx, 5
mov dword [esp + 0x28], ebx
cmp dword [0x657ee4], edx
jge 0x43fb6f
nop
lea eax, [0x67e0d0]
mov dword [esp], eax
call fcn.00409110
mov eax, dword [esp + 0x64]
lea ecx, [0x657ee0]
cmp dword [ecx + 8], eax
jl 0x43f9e8
mov dword [0x657ee4], eax
jmp 0x43fa73
lea ecx, [0x54b3a0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00447590
mov eax, dword [esp + 0xc]
mov dword [esp + 0x5c], eax
mov ecx, dword [0x657ee0]
mov edx, dword [0x657ee8]
lea ebx, [0x54b3a0]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x64]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.0040f380
mov eax, dword [esp + 0x64]
mov dword [0x657ee4], eax
mov dword [0x657ee8], eax
mov ecx, dword [0x67e2d0]
test ecx, ecx
jne 0x43fa5a
mov ebx, dword [esp + 0x5c]
mov dword [0x657ee0], ebx
jmp 0x43fa6d
lea edi, [0x657ee0]
mov ecx, eax
mov eax, dword [esp + 0x5c]
call fcn.0045f450
mov eax, ecx
lea ecx, [0x657ee0]
mov edx, dword [0x657f18]
mov ebx, dword [0x657f10]
mov ebp, dword [0x657f14]
mov esi, dword [esp + 0x28]
cmp edx, esi
jl 0x43fab2
jb 0x43ffac
mov dword [0x657f14], esi
mov edx, dword [0x657f38]
cmp edx, esi
jb 0x43ffa5
mov dword [0x657f34], esi
jmp 0x43fb54
lea eax, [0x547600]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
call fcn.00447440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
mov dword [0x657f14], ecx
mov dword [0x657f18], ecx
mov edx, dword [0x67e2d0]
test edx, edx
jne 0x43faf2
mov dword [0x657f10], eax
jmp 0x43fafd
lea edi, [0x657f10]
call fcn.0045f450
mov eax, dword [0x657f30]
mov edx, dword [0x657f34]
lea ebx, [0x547600]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call fcn.00447440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
mov dword [0x657f34], ecx
mov dword [0x657f38], ecx
mov edx, dword [0x67e2d0]
test edx, edx
jne 0x43fb49
mov dword [0x657f30], eax
jmp 0x43fb54
lea edi, [0x657f30]
call fcn.0045f450
nop
lea eax, [0x67e0d0]
mov dword [esp], eax
call fcn.00409310
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
mov eax, edi
jmp 0x43fb9d
lea eax, [eax + edx*4]
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
call fcn.004033e0
mov eax, dword [esp + 0x34]
lea edi, [eax + 1]
mov eax, dword [esp + 0x64]
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x28]
cmp edx, edi
jle 0x43fc04
mov ecx, dword [0x657ee4]
mov ebp, dword [0x657ee0]
cmp edi, ecx
jae 0x43ff9e
mov dword [esp + 0x34], edi
mov ecx, dword [ebp + edi*4]
test ecx, ecx
jne 0x43fbd7
lea eax, [0x558c00]
mov dword [esp], eax
call fcn.0040b170
mov ecx, dword [esp + 4]
mov edi, dword [esp + 0x34]
mov dword [esp + 0x50], ecx
mov dword [esp], ecx
mov dword [esp + 4], edi
call fcn.0043f320
mov ecx, dword [0x657ee4]
mov eax, dword [0x657ee0]
mov edx, dword [esp + 0x34]
cmp edx, ecx
jb 0x43fb73
jmp 0x43ff97
mov ebp, dword fs:[0x14]
mov ebp, dword [ebp]
mov dword [esp + 0x54], ebp
mov esi, dword [ebp + 0x18]
mov esi, dword [esi + 0x54]
test esi, esi
je 0x43fcb9
mov edi, esi
cmp dword [esi], edx
jl 0x43fc9f
test edi, edi
je 0x43fcb9
movzx esi, byte [0x662748]
xchg esi, eax
test al, al
xchg esi, eax
je 0x43fc90
nop
mov dword [ebp + 0x94], edi
mov byte [esp], 0x11
mov dword [esp + 4], 1
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.00453080
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x18]
mov ecx, dword [ecx + 0x54]
mov dword [esp], ecx
call fcn.00453f40
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x54]
mov esi, dword [ebp + 0x18]
mov esi, dword [esi + 0x54]
mov dword [esi + 0x2c], 0
jmp 0x43fcb9
mov dword [esi + 4], 1
mov eax, dword [ebp + 0x18]
mov eax, dword [eax + 0x54]
mov eax, dword [eax + 0x30]
mov dword [esp], eax
call fcn.00412640
jmp 0x43fcff
mov esi, dword [ebp + 0x18]
mov dword [esi + 0x54], 0
mov ecx, dword [0x657ee4]
mov esi, dword [0x657ee0]
test ecx, ecx
jbe 0x43ff90
mov eax, dword [esi]
mov dword [eax + 0x2c], 0
mov dword [eax + 4], 0
mov dword [esp], eax
call fcn.0043ffe0
movzx eax, byte [0x662748]
test al, al
je 0x43fcff
call fcn.004542f0
mov dword [0x67e13c], 0
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x64]
mov eax, ebx
jmp 0x43fd38
mov dword [esp + 0x30], ebx
mov eax, dword [ebp + ebx*4]
mov dword [esp], eax
call fcn.0043f4a0
mov eax, dword [esp + 0x30]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x24]
cmp ebx, edx
jge 0x43fd51
mov ecx, dword [0x657ee4]
mov ebp, dword [0x657ee0]
cmp ebx, ecx
jb 0x43fd15
jmp 0x43ff89
lea edx, [0x657ee0]
cmp dword [edx + 4], eax
je 0x43fdc2
nop
lea eax, [0x67e0d0]
mov dword [esp], eax
call fcn.00409110
mov edx, dword [0x657ee8]
mov ecx, dword [esp + 0x64]
cmp ecx, edx
ja 0x43ff84
mov dword [0x657ee4], ecx
mov edx, dword [0x657f18]
mov eax, dword [esp + 0x28]
cmp edx, eax
jb 0x43ff7d
mov dword [0x657f14], eax
mov edx, dword [0x657f38]
cmp edx, eax
jb 0x43ff76
mov dword [0x657f34], eax
nop
lea eax, [0x67e0d0]
mov dword [esp], eax
call fcn.00409310
mov eax, dword [esp + 0x64]
lea edx, [eax - 1]
mov ebx, dword [esp + 0x54]
xor ecx, ecx
jmp 0x43fdce
dec edx
mov dword [esp + 0x4c], ecx
test edx, edx
jl 0x43fe6b
mov ebp, dword [0x657ee4]
mov esi, dword [0x657ee0]
cmp edx, ebp
jae 0x43ff6d
mov ebp, dword [ebx + 0x18]
mov esi, dword [esi + edx*4]
mov ebp, dword [ebp + 0x54]
cmp ebp, esi
je 0x43fdcd
mov dword [esp + 0x2c], edx
mov dword [esp + 0x58], esi
mov dword [esi + 4], 0
mov dword [esp], esi
call fcn.004421a0
movzx eax, byte [esp + 4]
test al, al
jne 0x43fe4a
nop
mov edx, dword [0x658afc]
test edx, edx
je 0x43fe38
mov ebx, dword [edx + 0xb8]
mov dword [0x658afc], ebx
dec dword [0x658b00]
nop
mov ecx, dword [esp + 0x58]
mov dword [ecx + 0x2c], edx
nop
mov edx, dword [esp + 0x4c]
mov dword [ecx + 8], edx
jmp 0x43fe5a
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.00441fc0
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x54]
jmp 0x43fdcd
nop
mov dword [0x657f70], eax
mov dword [0x657f78], 0
mov edx, 1
jmp 0x43fe8c
lea edx, [ebx + 1]
mov eax, ebp
mov ecx, dword [esp + 0x4c]
cmp eax, edx
jb 0x43ff3a
mov ebx, edx
mov ebp, eax
jmp 0x43ff64
cmp edx, 1
jne 0x43ff33
mov edx, dword [0x657f78]
lea esi, [edx + 1]
mov edi, dword [0x657f74]
mov eax, ecx
mov ecx, dword [0x657f7c]
cmp ecx, esi
jae 0x43ff22
mov dword [esp + 0x3c], ebx
lea eax, [0x547600]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], esi
call fcn.00447650
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [0x657f7c], edx
mov edx, dword [0x67e2d0]
test edx, edx
jne 0x43ff07
mov dword [0x657f74], eax
jmp 0x43ff12
lea edi, [0x657f74]
call fcn.0045f450
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x64]
mov edx, ecx
mov edi, eax
mov eax, dword [esp + 0x4c]
lea ecx, [edx + 1]
mov dword [0x657f78], ecx
mov dword [edi + edx*4], ebx
jmp 0x43fe83
mov eax, ecx
jmp 0x43fe83
lea ecx, [0x67e12c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00401df0
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x68], eax
add esp, 0x60
ret
mov esi, eax
mov eax, edx
xor edx, edx
div esi
mov eax, edx
mov edx, esi
test eax, eax
jne 0x43ff58
jmp 0x43fe9d
mov eax, edx
mov ecx, ebp
call fcn.0045f4d0
mov ecx, eax
call fcn.0045f510
mov ecx, eax
call fcn.0045f510
call fcn.0045f510
mov eax, ebx
call fcn.0045f4d0
xor eax, eax
call fcn.0045f4d0
mov eax, edx
call fcn.0045f4d0
mov eax, edi
call fcn.0045f4d0
mov ecx, esi
call fcn.0045f510
mov ecx, esi
call fcn.0045f510
lea eax, [0x5617d8]
mov dword [esp], eax
mov dword [esp + 4], 0x17
call fcn.00433a80
nop
call fcn.0045e080
jmp fcn.0043f870