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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x7ff7ed868f18]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r14, qword [rcx]
mov rdi, rcx
mov rsi, qword [rcx + 8]
mov byte [rbp - 0x50], dl
sub rsi, r14
je 0x7ff7ed3b8d01
mov al, byte [r14]
mov byte [rcx + 0x3c], al
cmp rsi, 1
jbe 0x7ff7ed3b8d01
mov al, byte [r14 + 1]
mov r15d, 2
mov byte [rcx + 0x3d], al
xor r9d, r9d
xor ecx, ecx
mov r8d, r15d
cmp rsi, r15
jbe 0x7ff7ed3b8d01
mov r10d, r15d
lea r13d, [r15 + 0x7d]
lea r12d, [r15 + 5]
movzx edx, byte [r10 + r14]
inc r8
mov eax, edx
mov r10, r8
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
jns 0x7ff7ed3b85f4
cmp r8, rsi
jae 0x7ff7ed3b8d01
jmp 0x7ff7ed3b85cc
lea rax, [r8 + 0x20]
mov qword [rdi + 0x40], r9
lea rcx, [r8 + 0x20]
cmp rax, rsi
ja 0x7ff7ed3b8d01
lea rax, [r8 + r14]
mov qword [rdi + 0x48], rax
lea r8, [rcx + 4]
lea rax, [rcx + 4]
mov qword [rdi + 0x50], 0x20
mov dword [rdi + 0x1c], ecx
cmp rax, rsi
ja 0x7ff7ed3b8d01
cmp dword [rdi + 0x18], r12d
jne 0x7ff7ed3b867b
cmp byte [rdi + 0x3c], 0x12
jb 0x7ff7ed3b867b
lea rax, [r8 + 0x40]
lea rbx, [r8 + 0x40]
cmp rax, rsi
ja 0x7ff7ed3b8d01
lea rax, [r14 + r8]
mov qword [rdi + 0x58], rax
lea rax, [rbx + 2]
mov qword [rdi + 0x60], 0x40
cmp rax, rsi
ja 0x7ff7ed3b8d01
lea rdx, [r14 + rbx]
mov r8, r15
lea rcx, [rdi + 0x68]
call fcn.7ff7ed6b67f0
lea r8, [rbx + 2]
cmp dword [rdi + 0x18], 8
jne 0x7ff7ed3b86a4
lea rbx, [r8 + 0x18]
cmp rbx, rsi
ja 0x7ff7ed3b8d0b
lea rdx, [r14 + r8]
mov r8d, 0x18
lea rcx, [rbp - 0x28]
call fcn.7ff7ed6b67f0
mov r8, rbx
xor ebx, ebx
mov dword [rdi + 0x20], r8d
mov r9d, ebx
mov ecx, ebx
cmp r8, rsi
jae 0x7ff7ed3b8d01
movzx edx, byte [r14 + r8]
inc r8
mov eax, edx
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
js 0x7ff7ed3b86af
mov qword [rdi + 0x70], r9
mov ecx, ebx
mov r9, rbx
cmp r8, rsi
jae 0x7ff7ed3b8d01
movzx edx, byte [r14 + r8]
inc r8
mov eax, edx
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
js 0x7ff7ed3b86db
mov qword [rdi + 0x78], r9
mov r10, rbx
mov ecx, ebx
cmp r8, rsi
jae 0x7ff7ed3b8d01
mov r9, r8
movzx edx, byte [r14 + r9]
lea r9, [r8 + 1]
mov eax, edx
and rax, r13
shl rax, cl
add ecx, r12d
or r10, rax
test dl, dl
jns 0x7ff7ed3b873c
mov r8, r9
cmp r9, rsi
jae 0x7ff7ed3b8d01
jmp 0x7ff7ed3b8713
mov qword [rdi + 0x80], r10
cmp r10, 1
jne 0x7ff7ed3b8cf3
cmp r9, rsi
jae 0x7ff7ed3b8d01
mov al, byte [r14 + r9]
lea r8, [r9 + 1]
mov byte [rdi + 0x88], al
cmp al, 0xff
jne 0x7ff7ed3b8cf3
mov r9, rbx
mov ecx, ebx
cmp r8, rsi
jae 0x7ff7ed3b8d01
movzx edx, byte [r14 + r8]
inc r8
mov eax, edx
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
js 0x7ff7ed3b8771
mov qword [rdi + 0x90], r9
mov ecx, ebx
mov r9, rbx
cmp r8, rsi
jae 0x7ff7ed3b8d01
movzx edx, byte [r14 + r8]
inc r8
mov eax, edx
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
js 0x7ff7ed3b87a0
mov rax, rbx
mov qword [rdi + 0x98], r9
mov r10d, dword [rdi + 0x18]
cmp r10d, 8
mov dword [rbp - 0x30], r10d
sete al
inc rax
cmp r9, rax
jne 0x7ff7ed3b8cf3
mov r9, rbx
mov ecx, ebx
cmp r8, rsi
jae 0x7ff7ed3b8d01
mov rax, r8
movzx edx, byte [r8 + r14]
lea r8, [rax + 1]
mov eax, edx
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
jns 0x7ff7ed3b8822
mov rax, r8
cmp r8, rsi
jae 0x7ff7ed3b8d01
jmp 0x7ff7ed3b87f9
mov qword [rdi + 0xa0], r9
cmp r8, rsi
jae 0x7ff7ed3b8d01
mov al, byte [r14 + r8]
inc r8
mov byte [rdi + 0xa8], al
sub al, r15b
cmp al, 1
ja 0x7ff7ed3b8cf3
lea rax, [r8 + 0x20]
mov dword [rdi + 0x28], r8d
cmp rax, rsi
ja 0x7ff7ed3b8d01
lea rax, [r8 + r14]
add r8, 0x20
mov qword [rdi + 0xb0], rax
mov qword [rdi + 0xb8], 0x20
mov al, byte [rdi + 0xa8]
cmp r10d, 8
jne 0x7ff7ed3b8992
cmp al, r15b
jne 0x7ff7ed3b8cf3
mov r9, rbx
mov ecx, ebx
cmp r8, rsi
jae 0x7ff7ed3b8d01
mov r10, r8
movzx edx, byte [r14 + r10]
inc r8
mov eax, edx
mov r10, r8
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
jns 0x7ff7ed3b88c7
cmp r8, rsi
jae 0x7ff7ed3b8d01
jmp 0x7ff7ed3b889f
lea rax, [r8 + r9]
cmp rax, rsi
ja 0x7ff7ed3b8d01
lea rcx, [r8 + r9]
cmp rcx, rsi
jae 0x7ff7ed3b8d01
mov al, byte [r14 + rcx]
inc rcx
mov byte [rdi + 0xc0], al
cmp rcx, rsi
jae 0x7ff7ed3b8d01
mov rax, rcx
inc rcx
cmp byte [r14 + rax], bl
jge 0x7ff7ed3b8911
mov rax, rcx
cmp rcx, rsi
jae 0x7ff7ed3b8d01
jmp 0x7ff7ed3b88fa
cmp rcx, rsi
jae 0x7ff7ed3b8d01
lea rax, [rcx + 1]
cmp byte [r14 + rcx], r15b
jne 0x7ff7ed3b8cf3
lea r8, [rax + 0x20]
add rax, 0x20
cmp rax, rsi
ja 0x7ff7ed3b8d01
mov r9, rbx
mov ecx, ebx
cmp r8, rsi
jae 0x7ff7ed3b8d01
mov r10, r8
movzx edx, byte [r10 + r14]
inc r8
mov eax, edx
mov r10, r8
and rax, r13
shl rax, cl
add ecx, r12d
or r9, rax
test dl, dl
jns 0x7ff7ed3b8972
cmp r8, rsi
jae 0x7ff7ed3b8d01
jmp 0x7ff7ed3b894a
lea rax, [r8 + r9]
lea rcx, [r8 + r9]
cmp rax, rsi
ja 0x7ff7ed3b8d01
cmp rcx, rsi
jae 0x7ff7ed3b8d01
lea r8, [rcx + 1]
jmp 0x7ff7ed3b89af
mov r10, r8
cmp al, 3
jne 0x7ff7ed3b89b2
cmp r8, rsi
jae 0x7ff7ed3b8d01
mov al, byte [r14 + r8]
inc r8
mov byte [rdi + 0xc0], al
mov r10, r8
mov r11, rbx
mov ecx, ebx
cmp r8, rsi
jae 0x7ff7ed3b8d01
movzx edx, byte [r14 + r10]
lea r10, [r8 + 1]
mov eax, edx
and rax, r13
shl rax, cl
add ecx, r12d
or r11, rax
test dl, dl
jns 0x7ff7ed3b89e3
mov r8, r10
cmp r10, rsi
jmp 0x7ff7ed3b89ba
mov qword [rdi + 0xc8], r11
lea rax, [r10 + r11]
mov dword [rdi + 0x2c], r10d
mov r9, rbx
mov r13, qword [rdi]
mov r15d, r10d
add r15, r13
cmp rax, rsi
ja 0x7ff7ed3b8d01
lea r8, [r10 + r11]
mov r12b, 1
test r11, r11
je 0x7ff7ed3b8b46
mov r10, rbx
mov ecx, ebx
cmp r9, r11
jae 0x7ff7ed3b8cf7
movzx edx, byte [r9 + r15]
inc r9
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or r10, rax
test dl, dl
js 0x7ff7ed3b8a1c
sub r10, 1
je 0x7ff7ed3b8b1b
sub r10, 1
je 0x7ff7ed3b8ab9
cmp r10, 1
jne 0x7ff7ed3b8cf3
xor ecx, ecx
mov r10, r9
mov rax, r9
cmp r9, r11
jae 0x7ff7ed3b8cf7
movzx edx, byte [r10 + r15]
lea r10, [rax + 1]
mov eax, edx
mov r9, r10
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
mov rax, r10
test dl, dl
js 0x7ff7ed3b8a61
mov ecx, dword [rdi + 0x2c]
lea rax, [r10 + rbx]
add ecx, r10d
lea r9, [rbx + r10]
mov dword [rdi + 0x38], ecx
cmp rax, r11
ja 0x7ff7ed3b8cf7
lea rax, [r15 + r10]
mov qword [rdi + 0xe0], rax
mov qword [rdi + 0xe8], rbx
jmp 0x7ff7ed3b8b17
xor ecx, ecx
mov r10, r9
mov rax, r9
cmp r9, r11
jae 0x7ff7ed3b8cf7
movzx edx, byte [r15 + r10]
lea r10, [rax + 1]
mov eax, edx
mov r9, r10
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
mov rax, r10
test dl, dl
js 0x7ff7ed3b8ac1
mov ecx, dword [rdi + 0x2c]
lea rax, [r10 + rbx]
add ecx, r10d
lea r9, [r10 + rbx]
mov dword [rdi + 0x34], ecx
cmp rax, r11
ja 0x7ff7ed3b8cf7
lea rax, [r15 + r10]
mov qword [rdi + 0xd0], rax
mov qword [rdi + 0xd8], rbx
xor ebx, ebx
jmp 0x7ff7ed3b8b3d
test r12b, r12b
je 0x7ff7ed3b8b2c
mov ecx, dword [rdi + 0x2c]
mov r12b, bl
add ecx, r9d
mov dword [rdi + 0x30], ecx
lea rax, [r9 + 0x20]
cmp rax, r11
ja 0x7ff7ed3b8cf7
add r9, 0x20
cmp r9, r11
jb 0x7ff7ed3b8a17
cmp dword [rbp - 0x30], 8
jne 0x7ff7ed3b8b88
cmp r8, rsi
jae 0x7ff7ed3b8d01
lea rax, [r14 + r8]
inc r8
cmp byte [rax], bl
jl 0x7ff7ed3b8b4c
cmp r8, rsi
jae 0x7ff7ed3b8d01
lea rax, [r14 + r8]
inc r8
cmp byte [rax], bl
jl 0x7ff7ed3b8b60
cmp r8, rsi
jae 0x7ff7ed3b8d01
lea rax, [r14 + r8]
inc r8
cmp byte [rax], bl
jl 0x7ff7ed3b8b74
mov dword [rdi + 0x24], r8d
cmp r8, rsi
jae 0x7ff7ed3b8d01
lea r12, [r8 + 1]
cmp byte [r14 + r8], bl
jne 0x7ff7ed3b8cf3
mov ecx, r8d
lea rax, [rcx + 1]
cmp r12, rax
jne 0x7ff7ed3b8cf3
cmp byte [rcx + r13], bl
jne 0x7ff7ed3b8cf3
mov r8, rbx
mov ecx, ebx
cmp r12, rsi
jae 0x7ff7ed3b8d01
movzx edx, byte [r14 + r12]
inc r12
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or r8, rax
test dl, dl
js 0x7ff7ed3b8bc2
mov qword [rdi + 0xf0], r8
cmp byte [rbp - 0x50], bl
je 0x7ff7ed3b8cc7
lea r15, [rdi + 0xf8]
mov rdx, qword [r15]
lea rcx, [r8 + 1]
mov rax, qword [r15 + 8]
sub rax, rdx
shl rcx, 5
cmp rcx, rax
jae 0x7ff7ed3b8c1d
lea rax, [rcx + rdx]
mov qword [r15 + 8], rax
jmp 0x7ff7ed3b8c50
jbe 0x7ff7ed3b8c50
mov rax, qword [r15 + 0x10]
sub rax, rdx
cmp rcx, rax
jbe 0x7ff7ed3b8c3c
mov rdx, rcx
lea r8, [rbp - 0x50]
mov rcx, r15
call fcn.7ff7ed3aa7b8
jmp 0x7ff7ed3b8c50
lea rbx, [rcx + rdx]
mov rcx, qword [r15 + 8]
mov rdx, rbx
call fcn.7ff7ed3a6adc
mov qword [r15 + 8], rbx
mov edx, dword [rdi + 0x24]
mov ecx, dword [rdi + 0x20]
add rdx, qword [rdi]
add rcx, qword [rdi]
mov r8, qword [r15]
call fcn.7ff7ed3b8498
mov r13d, 1
cmp r13, qword [rdi + 0xf0]
ja 0x7ff7ed3b8cbf
lea r9d, [r13 + 0x1f]
lea rbx, [r14 + r12]
mov ecx, r9d
mov r12d, r9d
mov qword [rbp - 0x30], rcx
sub r12, r14
lea rax, [r12 + rbx]
cmp rax, rsi
ja 0x7ff7ed3b8d01
add rcx, qword [r15]
mov rdx, rbx
mov r8, r9
add rbx, r9
call fcn.7ff7ed6b67f0
mov rcx, qword [rbp - 0x30]
mov r9d, 0x20
add rcx, r9
inc r13
mov qword [rbp - 0x30], rcx
cmp r13, qword [rdi + 0xf0]
jbe 0x7ff7ed3b8c88
mov rcx, rdi
call fcn.7ff7ed3b8224
mov al, 1
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.7ff7ed6b54e0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
xor al, al
jmp 0x7ff7ed3b8cc9
lea rcx, [rbp - 0x28]
call fcn.7ff7ed3b8528
int3
lea rcx, [rbp - 0x48]
call fcn.7ff7ed3b8528
int3
lea rcx, [rbp - 0x48]
call fcn.7ff7ed3b8528
int3