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

Disassembly:
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.1401e1b20
sub rsp, rax
lea rbp, [rsp + 0x50]
mov rax, qword [0x1402d6010]
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 0x140048f53
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileType]
test eax, eax
je 0x140048f53
lea rdi, [rbp + 0x268]
call fcn.140001380
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.1401bce80
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 0x140049201
mov r8, qword [rbp + 0x260]
mov rcx, r8
call fcn.140049290
lea r9d, [rax + 1]
lea rax, [r9 + r9]
mov ebx, r9d
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140048f80
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1401e1b20
sub rsp, rcx
xor esi, esi
lea rdi, [rsp + 0x50]
test rdi, rdi
jne 0x140048fa7
lea rdi, str.no_stack_
jmp 0x14004914f
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 0x1400490dd
mov rcx, rsi
test rbx, rbx
je 0x1400490bc
cmp rbx, 4
jb 0x1400490c1
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 0x140048ffd
cmp r8, rdx
jae 0x1400490d0
cmp rbx, 0x20
jb 0x140049089
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 0x140049022
cmp rdx, 4
jb 0x1400490bc
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 0x1400490a0
cmp rcx, rbx
jae 0x1400490dd
mov rdx, qword [rbp + 0x260]
nop dword [rax + rax]
movsx eax, byte [rcx + rdx]
mov word [rdi + rcx*2], ax
inc rcx
jmp 0x1400490bc
mov r8, rsi
test rbx, rbx
je 0x14004914f
lea r9, [0x140000000]
nop dword [rax]
cmp word [rdi + r8*2], 0x25
jne case.0x140049122.47
lea rdx, [rdi + 2]
lea rdx, [rdx + r8*2]
movzx eax, word [rdx]
add eax, 0xffffffd6
cmp eax, 0x49
ja case.0x140049122.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 0x140049100
mov word [rdx], 0x53
jmp case.0x140049122.47
mov word [rdx], reloc.WS2_32.dll_WSAStartup
jmp case.0x140049122.47
mov word [rdx], 0x43
jmp case.0x140049122.47
mov word [rdx], 0x63
inc r8
cmp r8, rbx
jb 0x1400490f0
lea rbx, [rbp + 0x268]
call fcn.140001380
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.1401bd1e8
mov word [rbp + 0x20e], si
call fcn.140048d20
xor ecx, ecx
test eax, eax
jle 0x1400491ea
lea rdx, str.OpenSSL
call qword [sym.imp.ADVAPI32.dll_RegisterEventSourceW]
mov rbx, rax
test rax, rax
je 0x140049201
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 0x140049201
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.14000d9d0
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.1400600b0
lea rdx, str.random
mov rbx, rax
mov rcx, qword [rax + 8]
call fcn.14005c5d0
test eax, eax
jne 0x14005046b
lea rcx, [rsi + 0x20]
jmp 0x1400504eb
mov rcx, qword [rbx + 8]
lea rdx, str.cipher
call fcn.14005c5d0
test eax, eax
jne 0x140050485
lea rcx, [rsi + 0x28]
jmp 0x1400504eb
mov rcx, qword [rbx + 8]
lea rdx, str.digest
call fcn.14005c5d0
test eax, eax
jne 0x14005049f
lea rcx, [rsi + 0x30]
jmp 0x1400504eb
mov rcx, qword [rbx + 8]
lea rdx, str.properties
call fcn.14005c5d0
test eax, eax
jne 0x1400504b9
lea rcx, [rsi + 0x38]
jmp 0x1400504eb
mov rcx, qword [rbx + 8]
lea rdx, str.seed
call fcn.14005c5d0
test eax, eax
jne 0x1400504d3
lea rcx, [rsi + 0x40]
jmp 0x1400504eb
mov rcx, qword [rbx + 8]
lea rdx, str.seed_properties
call fcn.14005c5d0
test eax, eax
jne 0x1400504fe
lea rcx, [rsi + 0x48]
mov rdx, qword [rbx + 0x10]
call fcn.140050560
test eax, eax
je 0x14005040d
jmp 0x14005053f
call fcn.14004ed60
lea r8, str.random_conf_init
call 0xcd520504
add eax, 0x1b9b26
mov edx, 0x333
lea rcx, str.crypto_rand_rand_lib.c
call fcn.14004ee80
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.14004ef80
xor r14d, r14d
mov rcx, rbp
inc edi
call fcn.14005fe00
cmp edi, eax
jl 0x140050441
mov eax, r14d
jmp 0x14005040f