Function at 0x5f5cb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
xor eax, eax
movdqu xmm0, xmmword [0x008d9ee0]
lea rdi, [rcx + 8]
mov qword [rsp + 0x70], r8
mov rbx, rcx
mov rbp, rdx
and rdi, 0xfffffffffffffff8
mov qword [rcx], 0
mov r8d, 0x9e
mov rsi, r9
mov qword [rcx + 0xa8], 0
sub rcx, rdi
lea rdx, str.crypto_modes_ocb128.c
add ecx, 0xb0
shr ecx, 3
rep stosq qword [rdi], rax
movups xmmword [rbx + 0x28], xmm0
mov ecx, 0x50
call sym.CRYPTO_malloc
mov qword [rbx + 0x58], rax
test rax, rax
je 0x5f6466
movq xmm0, rsi
mov rax, qword [rsp + 0x88]
lea rcx, [rbx + 0x38]
mov r8, rbp
movhps xmm0, qword [rsp + 0x80]
mov rdx, rcx
movups xmmword [rbx], xmm0
movq xmm0, rbp
movhps xmm0, qword [rsp + 0x70]
mov qword [rbx + 0x20], rax
movups xmmword [rbx + 0x10], xmm0
call rsi
movzx edx, byte [rbx + 0x47]
movzx ecx, byte [rbx + 0x38]
lea eax, [rdx + rdx]
sar edx, 7
sar cl, 7
mov byte [rbx + 0x57], al
movzx eax, byte [rbx + 0x46]
and ecx, 0xffffff87
lea r8d, [rax + rax]
sar eax, 7
or edx, r8d
mov byte [rbx + 0x56], dl
movzx edx, byte [rbx + 0x45]
lea r8d, [rdx + rdx]
sar edx, 7
or eax, r8d
mov byte [rbx + 0x55], al
movzx eax, byte [rbx + 0x44]
lea r8d, [rax + rax]
sar eax, 7
or edx, r8d
mov byte [rbx + 0x54], dl
movzx edx, byte [rbx + 0x43]
lea r8d, [rdx + rdx]
sar edx, 7
or eax, r8d
mov byte [rbx + 0x53], al
movzx eax, byte [rbx + 0x42]
lea r8d, [rax + rax]
sar eax, 7
or edx, r8d
mov byte [rbx + 0x52], dl
movzx edx, byte [rbx + 0x41]
lea r8d, [rdx + rdx]
sar edx, 7
or eax, r8d
mov byte [rbx + 0x51], al
movzx eax, byte [rbx + 0x40]
lea r8d, [rax + rax]
sar eax, 7
or edx, r8d
mov byte [rbx + 0x50], dl
movzx edx, byte [rbx + 0x3f]
lea r8d, [rdx + rdx]
sar edx, 7
or eax, r8d
mov byte [rbx + 0x4f], al
movzx eax, byte [rbx + 0x3e]
lea r8d, [rax + rax]
sar eax, 7
or edx, r8d
mov byte [rbx + 0x4e], dl
movzx edx, byte [rbx + 0x3d]
lea r8d, [rdx + rdx]
sar edx, 7
or eax, r8d
mov byte [rbx + 0x4d], al
movzx eax, byte [rbx + 0x3c]
lea r8d, [rax + rax]
sar eax, 7
or edx, r8d
mov byte [rbx + 0x4c], dl
movzx edx, byte [rbx + 0x3b]
lea r8d, [rdx + rdx]
sar edx, 7
or eax, r8d
mov byte [rbx + 0x4b], al
movzx eax, byte [rbx + 0x3a]
lea r8d, [rax + rax]
sar eax, 7
or edx, r8d
movzx r8d, byte [rbx + 0x39]
mov byte [rbx + 0x4a], dl
lea edx, [r8 + r8]
sar r8d, 7
or eax, edx
mov byte [rbx + 0x49], al
movzx eax, byte [rbx + 0x38]
lea edx, [rax + rax]
or edx, r8d
mov byte [rbx + 0x48], dl
mov rax, qword [rbx + 0x58]
sar dl, 7
xor byte [rbx + 0x57], cl
movzx r8d, byte [rbx + 0x57]
and edx, 0xffffff87
lea ecx, [r8 + r8]
sar r8d, 7
mov byte [rax + 0xf], cl
movzx ecx, byte [rbx + 0x56]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0xe], r8b
movzx r8d, byte [rbx + 0x55]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0xd], cl
movzx ecx, byte [rbx + 0x54]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0xc], r8b
movzx r8d, byte [rbx + 0x53]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0xb], cl
movzx ecx, byte [rbx + 0x52]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0xa], r8b
movzx r8d, byte [rbx + 0x51]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 9], cl
movzx ecx, byte [rbx + 0x50]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 8], r8b
movzx r8d, byte [rbx + 0x4f]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 7], cl
movzx ecx, byte [rbx + 0x4e]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 6], r8b
movzx r8d, byte [rbx + 0x4d]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 5], cl
movzx ecx, byte [rbx + 0x4c]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 4], r8b
movzx r8d, byte [rbx + 0x4b]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 3], cl
movzx ecx, byte [rbx + 0x4a]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 2], r8b
movzx r9d, byte [rbx + 0x49]
lea r8d, [r9 + r9]
or ecx, r8d
sar r9d, 7
mov byte [rax + 1], cl
movzx r8d, byte [rbx + 0x48]
xor byte [rax + 0xf], dl
lea ecx, [r8 + r8]
or ecx, r9d
mov byte [rax], cl
mov rax, qword [rbx + 0x58]
movzx r8d, byte [rax + 0xf]
movzx edx, byte [rax]
lea ecx, [r8 + r8]
sar r8d, 7
sar dl, 7
mov byte [rax + 0x1f], cl
movzx ecx, byte [rax + 0xe]
and edx, 0xffffff87
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x1e], r8b
movzx r8d, byte [rax + 0xd]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x1d], cl
movzx ecx, byte [rax + 0xc]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x1c], r8b
movzx r8d, byte [rax + 0xb]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x1b], cl
movzx ecx, byte [rax + 0xa]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x1a], r8b
movzx r8d, byte [rax + 9]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x19], cl
movzx ecx, byte [rax + 8]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x18], r8b
movzx r8d, byte [rax + 7]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x17], cl
movzx ecx, byte [rax + 6]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x16], r8b
movzx r8d, byte [rax + 5]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x15], cl
movzx ecx, byte [rax + 4]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x14], r8b
movzx r8d, byte [rax + 3]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x13], cl
movzx ecx, byte [rax + 2]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
movzx r9d, byte [rax + 1]
mov byte [rax + 0x12], r8b
lea r8d, [r9 + r9]
or ecx, r8d
movzx r8d, byte [rax]
sar r9d, 7
xor byte [rax + 0x1f], dl
mov byte [rax + 0x11], cl
lea ecx, [r8 + r8]
or ecx, r9d
mov byte [rax + 0x10], cl
mov rax, qword [rbx + 0x58]
movzx r8d, byte [rax + 0x1f]
movzx edx, byte [rax + 0x10]
lea ecx, [r8 + r8]
sar r8d, 7
sar dl, 7
mov byte [rax + 0x2f], cl
movzx ecx, byte [rax + 0x1e]
and edx, 0xffffff87
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x2e], r8b
movzx r8d, byte [rax + 0x1d]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x2d], cl
movzx ecx, byte [rax + 0x1c]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x2c], r8b
movzx r8d, byte [rax + 0x1b]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x2b], cl
movzx ecx, byte [rax + 0x1a]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x2a], r8b
movzx r8d, byte [rax + 0x19]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x29], cl
movzx ecx, byte [rax + 0x18]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x28], r8b
movzx r8d, byte [rax + 0x17]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x27], cl
movzx ecx, byte [rax + 0x16]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x26], r8b
movzx r8d, byte [rax + 0x15]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x25], cl
movzx ecx, byte [rax + 0x14]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x24], r8b
movzx r8d, byte [rax + 0x13]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x23], cl
movzx ecx, byte [rax + 0x12]
lea r9d, [rcx + rcx]
or r8d, r9d
movzx r9d, byte [rax + 0x11]
sar ecx, 7
xor byte [rax + 0x2f], dl
mov byte [rax + 0x22], r8b
lea r8d, [r9 + r9]
sar r9d, 7
or ecx, r8d
movzx r8d, byte [rax + 0x10]
mov byte [rax + 0x21], cl
lea ecx, [r8 + r8]
or ecx, r9d
mov byte [rax + 0x20], cl
mov rax, qword [rbx + 0x58]
movzx r8d, byte [rax + 0x2f]
movzx edx, byte [rax + 0x20]
lea ecx, [r8 + r8]
sar r8d, 7
sar dl, 7
mov byte [rax + 0x3f], cl
movzx ecx, byte [rax + 0x2e]
and edx, 0xffffff87
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x3e], r8b
movzx r8d, byte [rax + 0x2d]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x3d], cl
movzx ecx, byte [rax + 0x2c]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x3c], r8b
movzx r8d, byte [rax + 0x2b]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x3b], cl
movzx ecx, byte [rax + 0x2a]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x3a], r8b
movzx r8d, byte [rax + 0x29]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x39], cl
movzx ecx, byte [rax + 0x28]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x38], r8b
movzx r8d, byte [rax + 0x27]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x37], cl
movzx ecx, byte [rax + 0x26]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x36], r8b
movzx r8d, byte [rax + 0x25]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x35], cl
movzx ecx, byte [rax + 0x24]
lea r9d, [rcx + rcx]
sar ecx, 7
or r8d, r9d
mov byte [rax + 0x34], r8b
movzx r8d, byte [rax + 0x23]
lea r9d, [r8 + r8]
sar r8d, 7
or ecx, r9d
mov byte [rax + 0x33], cl
movzx ecx, byte [rax + 0x22]
lea r9d, [rcx + rcx]
or r8d, r9d
movzx r9d, byte [rax + 0x21]
sar ecx, 7
xor byte [rax + 0x3f], dl
mov byte [rax + 0x32], r8b
lea r8d, [r9 + r9]
sar r9d, 7
or ecx, r8d
movzx r8d, byte [rax + 0x20]
mov byte [rax + 0x31], cl
lea ecx, [r8 + r8]
or ecx, r9d
mov byte [rax + 0x30], cl
mov rax, qword [rbx + 0x58]
movzx ecx, byte [rax + 0x3f]
movzx r8d, byte [rax + 0x30]
lea edx, [rcx + rcx]
sar ecx, 7
sar r8b, 7
mov byte [rax + 0x4f], dl
movzx edx, byte [rax + 0x3e]
and r8d, 0xffffff87
lea r9d, [rdx + rdx]
sar edx, 7
or ecx, r9d
mov byte [rax + 0x4e], cl
movzx ecx, byte [rax + 0x3d]
lea r9d, [rcx + rcx]
sar ecx, 7
or edx, r9d
mov byte [rax + 0x4d], dl
movzx edx, byte [rax + 0x3c]
lea r9d, [rdx + rdx]
sar edx, 7
or ecx, r9d
mov byte [rax + 0x4c], cl
movzx ecx, byte [rax + 0x3b]
lea r9d, [rcx + rcx]
sar ecx, 7
or edx, r9d
mov byte [rax + 0x4b], dl
movzx edx, byte [rax + 0x3a]
lea r9d, [rdx + rdx]
sar edx, 7
or ecx, r9d
mov byte [rax + 0x4a], cl
movzx ecx, byte [rax + 0x39]
lea r9d, [rcx + rcx]
sar ecx, 7
or edx, r9d
mov byte [rax + 0x49], dl
movzx edx, byte [rax + 0x38]
lea r9d, [rdx + rdx]
sar edx, 7
or ecx, r9d
mov byte [rax + 0x48], cl
movzx ecx, byte [rax + 0x37]
lea r9d, [rcx + rcx]
sar ecx, 7
or edx, r9d
mov byte [rax + 0x47], dl
movzx edx, byte [rax + 0x36]
lea r9d, [rdx + rdx]
sar edx, 7
or ecx, r9d
mov byte [rax + 0x46], cl
movzx ecx, byte [rax + 0x35]
lea r9d, [rcx + rcx]
sar ecx, 7
or edx, r9d
mov byte [rax + 0x45], dl
movzx edx, byte [rax + 0x34]
lea r9d, [rdx + rdx]
sar edx, 7
or ecx, r9d
mov byte [rax + 0x44], cl
movzx ecx, byte [rax + 0x33]
lea r9d, [rcx + rcx]
or edx, r9d
sar ecx, 7
xor byte [rax + 0x4f], r8b
mov byte [rax + 0x43], dl
movzx edx, byte [rax + 0x32]
lea r9d, [rdx + rdx]
sar edx, 7
or ecx, r9d
movzx r9d, byte [rax + 0x31]
mov byte [rax + 0x42], cl
lea ecx, [r9 + r9]
sar r9d, 7
or edx, ecx
movzx ecx, byte [rax + 0x30]
mov byte [rax + 0x41], dl
lea edx, [rcx + rcx]
or edx, r9d
mov byte [rax + 0x40], dl
mov eax, 1
mov qword [rbx + 0x28], 4
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov r8d, 0x41
mov edx, 0x7a
mov ecx, 0xf
mov dword [rsp + 0x20], 0x9f
lea r9, str.crypto_modes_ocb128.c
call sym.ERR_put_error
xor eax, eax
jmp 0x5f645d