Function at 0x140ae4bb0
Capabilities:
Access the windows event log
Write file on windows

Disassembly:
xchg ebx, eax
cmpsd dword [rsi], dword [rdi]
lodsb al, byte [rsi]
invalid
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
push rbp
push rbx
push rsi
push rdi
push r14
push r15
mov eax, 0x278
call fcn.140cbaf80
sub rsp, rax
lea rbp, [rsp + 0x50]
mov rax, qword [0x140f4c000]
xor rax, rbp
mov qword [rbp + 0x210], rax
mov ecx, 0xfffffff4
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rbx, rax
test rax, rax
je 0x140ae4c73
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileType]
test eax, eax
je 0x140ae4c73
lea rdi, [rbp + 0x268]
call fcn.1401295c0
mov r9, qword [rbp + 0x260]
lea rdx, [rbp + 0x10]
mov qword [rsp + 0x28], rdi
xor esi, esi
mov edi, 0x200
mov qword [rsp + 0x20], rsi
mov rcx, qword [rax]
mov r8d, edi
or rcx, 1
call fcn.140ccbce0
test eax, eax
mov qword [rsp + 0x20], rsi
mov ecx, 0xffffffff
lea r9, [rbp]
cmovs eax, ecx
lea rdx, [rbp + 0x10]
test eax, eax
mov rcx, rbx
cmovs eax, edi
mov r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x140ae4f41
mov r8, qword [rbp + 0x260]
xor esi, esi
mov eax, esi
mov rcx, r8
cmp byte [r8], al
je 0x140ae4c97
cmp eax, 0x80000000
jae 0x140ae4c97
inc rcx
inc eax
cmp byte [rcx], sil
jne 0x140ae4c86
btr eax, 0x1f
lea r9d, [rax + 1]
lea rax, [r9 + r9]
mov ebx, r9d
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140ae4cb9
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.140cbaf80
sub rsp, rcx
lea rdi, [rsp + 0x50]
test rdi, rdi
jne 0x140ae4cde
lea rdi, str.no_stack_
jmp 0x140ae4e8f
mov dword [rsp + 0x28], r9d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jne 0x140ae4e1d
mov rcx, rsi
test rbx, rbx
je 0x140ae4dfc
cmp rbx, 4
jb 0x140ae4e01
mov rdx, qword [rbp + 0x260]
lea r8, [rdi - 2]
lea r8, [r8 + rbx*2]
lea rax, [rdx - 1]
add rax, rbx
cmp rdi, rax
ja 0x140ae4d34
cmp r8, rdx
jae 0x140ae4e10
cmp rbx, 0x20
jb 0x140ae4dc7
mov rdx, rbx
mov r9, rbx
and edx, 0x1f
sub r9, rdx
mov rax, qword [rbp + 0x260]
lea r8, [rdi + 0x20]
add rax, 0x10
nop dword [rax]
movq xmm0, qword [rax - 0x10]
lea r8, [r8 + 0x40]
movq xmm1, qword [rax - 8]
lea rax, [rax + 0x20]
punpcklbw xmm0, xmm0
add rcx, 0x20
punpcklbw xmm1, xmm1
psraw xmm0, 8
psraw xmm1, 8
movdqu xmmword [r8 - 0x60], xmm0
movq xmm0, qword [rax - 0x20]
punpcklbw xmm0, xmm0
psraw xmm0, 8
movdqu xmmword [r8 - 0x50], xmm1
movq xmm1, qword [rax - 0x18]
punpcklbw xmm1, xmm1
psraw xmm1, 8
movdqu xmmword [r8 - 0x40], xmm0
movdqu xmmword [r8 - 0x30], xmm1
cmp rcx, r9
jb 0x140ae4d60
cmp rdx, 4
jb 0x140ae4dfc
mov rax, rbx
and rax, 0xfffffffffffffffc
mov rdx, qword [rbp + 0x260]
nop word [rax + rax]
movd xmm0, dword [rcx + rdx]
punpcklbw xmm0, xmm0
psraw xmm0, 8
movq qword [rdi + rcx*2], xmm0
add rcx, 4
cmp rcx, rax
jb 0x140ae4de0
cmp rcx, rbx
jae 0x140ae4e1d
mov rdx, qword [rbp + 0x260]
nop dword [rax + rax]
movsx eax, byte [rcx + rdx]
mov word [rdi + rcx*2], ax
inc rcx
jmp 0x140ae4dfc
mov r8, rsi
test rbx, rbx
je 0x140ae4e8f
lea r9, [0x140000000]
nop dword [rax]
cmp word [rdi + r8*2], 0x25
jne case.0x140ae4e62.47
lea rdx, [rdi + 2]
lea rdx, [rdx + r8*2]
movzx eax, word [rdx]
add eax, 0xffffffd6
cmp eax, 0x49
ja case.0x140ae4e62.47
movsxd rcx, eax
movzx eax, byte [r9 + rcx + 0xae4f78]
mov ecx, dword [r9 + rax*4 + 0xae4f60]
add rcx, r9
jmp rcx
inc r8
add rdx, 2
jmp 0x140ae4e40
mov word [rdx], 0x53
jmp case.0x140ae4e62.47
mov word [rdx], reloc.WS2_32.dll_WSAStartup
jmp case.0x140ae4e62.47
mov word [rdx], 0x43
jmp case.0x140ae4e62.47
mov word [rdx], 0x63
inc r8
cmp r8, rbx
jb 0x140ae4e30
lea rbx, [rbp + 0x268]
call fcn.1401295c0
mov qword [rsp + 0x28], rbx
lea rdx, [rbp + 0x10]
mov r9, rdi
mov qword [rsp + 0x20], rsi
mov r8d, 0xff
mov rcx, qword [rax]
or rcx, 1
call fcn.140ccc048
mov word [rbp + 0x20e], si
call fcn.140ae4a40
xor ecx, ecx
test eax, eax
jle 0x140ae4f2a
lea rdx, str.OpenSSL
call qword [sym.imp.ADVAPI32.dll_RegisterEventSourceW]
mov rbx, rax
test rax, rax
je 0x140ae4f41
mov qword [rsp + 0x40], rsi
lea rax, [rbp + 0x10]
mov ecx, 1
mov qword [rbp], rax
lea rax, [rbp]
mov edx, ecx
mov qword [rsp + 0x38], rax
xor r8d, r8d
mov dword [rsp + 0x30], esi
xor r9d, r9d
mov word [rsp + 0x28], cx
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.ADVAPI32.dll_ReportEventW]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_DeregisterEventSource]
jmp 0x140ae4f41
mov r9d, reloc.WS2_32.dll_recv
lea r8, str.OpenSSL:_FATAL
lea rdx, [rbp + 0x10]
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rcx, qword [rbp + 0x210]
xor rcx, rbp
call fcn.140cbacb0
lea rsp, [rbp + 0x228]
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret