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

Disassembly:
mov esi, dword [rsp + 0x40]
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.1402a9b20
sub rsp, rax
lea rbp, [rsp + 0x50]
mov rax, qword [0x14039e010]
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 0x140110f53
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileType]
test eax, eax
je 0x140110f53
lea rdi, [rbp + 0x268]
call fcn.1400c9380
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.140284e80
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 0x140111201
mov r8, qword [rbp + 0x260]
mov rcx, r8
call fcn.140111290
lea r9d, [rax + 1]
lea rax, [r9 + r9]
mov ebx, r9d
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140110f80
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1402a9b20
sub rsp, rcx
xor esi, esi
lea rdi, [rsp + 0x50]
test rdi, rdi
jne 0x140110fa7
lea rdi, str.no_stack_
jmp 0x14011114f
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 0x1401110dd
mov rcx, rsi
test rbx, rbx
je 0x1401110bc
cmp rbx, 4
jb 0x1401110c1
mov rdx, qword [rbp + 0x260]
lea r8, [rbx - 1]
lea r8, [rdi + r8*2]
lea rax, [rdx - 1]
add rax, rbx
cmp rdi, rax
ja 0x140110ffd
cmp r8, rdx
jae 0x1401110d0
cmp rbx, 0x20
jb 0x140111089
mov rdx, rbx
mov r9, rbx
and edx, 0x1f
sub r9, rdx
mov rax, qword [rbp + 0x260]
lea r8, [rdi + 0x20]
add rax, 0x10
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 0x140111022
cmp rdx, 4
jb 0x1401110bc
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 0x1401110a0
cmp rcx, rbx
jae 0x1401110dd
mov rdx, qword [rbp + 0x260]
nop dword [rax + rax]
movsx eax, byte [rcx + rdx]
mov word [rdi + rcx*2], ax
inc rcx
jmp 0x1401110bc
mov r8, rsi
test rbx, rbx
je 0x14011114f
lea r9, [0x1400c8000]
nop dword [rax]
cmp word [rdi + r8*2], 0x25
jne case.0x140111122.47
lea rdx, [rdi + 2]
lea rdx, [rdx + r8*2]
movzx eax, word [rdx]
add eax, 0xffffffd6
cmp eax, 0x49
ja case.0x140111122.47
movsxd rcx, eax
movzx eax, byte [r9 + rcx + 0x49238]
mov ecx, dword [r9 + rax*4 + 0x49220]
add rcx, r9
jmp rcx
inc r8
add rdx, 2
jmp 0x140111100
mov word [rdx], 0x53
jmp case.0x140111122.47
mov word [rdx], reloc.WS2_32.dll_WSAStartup
jmp case.0x140111122.47
mov word [rdx], 0x43
jmp case.0x140111122.47
mov word [rdx], 0x63
inc r8
cmp r8, rbx
jb 0x1401110f0
lea rbx, [rbp + 0x268]
call fcn.1400c9380
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.1402851e8
mov word [rbp + 0x20e], si
call fcn.140110d20
xor ecx, ecx
test eax, eax
jle 0x1401111ea
lea rdx, str.OpenSSL
call qword [sym.imp.ADVAPI32.dll_RegisterEventSourceW]
mov rbx, rax
test rax, rax
je 0x140111201
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 0x140111201
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.1400d59d0
lea rsp, [rbp + 0x228]
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret
mov edx, edi
mov rcx, rbp
call fcn.1401280b0
lea rdx, str.random
mov rbx, rax
mov rcx, qword [rax + 8]
call fcn.1401245d0
test eax, eax
jne 0x14011846b
lea rcx, [rsi + 0x20]
jmp 0x1401184eb
mov rcx, qword [rbx + 8]
lea rdx, str.cipher
call fcn.1401245d0
test eax, eax
jne 0x140118485
lea rcx, [rsi + 0x28]
jmp 0x1401184eb
mov rcx, qword [rbx + 8]
lea rdx, str.digest
call fcn.1401245d0
test eax, eax
jne 0x14011849f
lea rcx, [rsi + 0x30]
jmp 0x1401184eb
mov rcx, qword [rbx + 8]
lea rdx, str.properties
call fcn.1401245d0
test eax, eax
jne 0x1401184b9
lea rcx, [rsi + 0x38]
jmp 0x1401184eb
mov rcx, qword [rbx + 8]
lea rdx, str.seed
call fcn.1401245d0
test eax, eax
jne 0x1401184d3
lea rcx, [rsi + 0x40]
jmp 0x1401184eb
mov rcx, qword [rbx + 8]
lea rdx, str.seed_properties
call fcn.1401245d0
test eax, eax
jne 0x1401184fe
lea rcx, [rsi + 0x48]
mov rdx, qword [rbx + 0x10]
call fcn.140118560
test eax, eax
je 0x14011840d
jmp 0x14011853f
call fcn.140116d60
lea r8, str.random_conf_init
call 0xcd5e8504
add eax, 0x1b9b26
mov edx, 0x333
lea rcx, str.crypto_rand_rand_lib.c
call fcn.140116e80
mov rax, qword [rbx + 0x10]
lea r8, str.name_s__value_s
mov r9, qword [rbx + 8]
mov edx, 0x78
mov qword [rsp + 0x20], rax
lea ecx, [rdx - 0x69]
call fcn.140116f80
xor r14d, r14d
mov rcx, rbp
inc edi
call fcn.140127e00
cmp edi, eax
jl 0x140118441
mov eax, r14d
jmp 0x14011840f