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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
xor r15d, r15d
mov r13, r9
mov ebx, r8d
mov rsi, rdx
mov r12, rcx
cmp rdx, r15
je 0x7ff74b14564
cmp r9, r15
mov r10d, r15d
lea edx, [r15 + 1]
setne r10b
cmp ebx, r15d
mov eax, edx
cmova eax, r10d
cmp eax, r15d
je 0x7ff74b14564
mov r14, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb0]
mov ecx, r15d
cmp r14, r15
mov eax, edx
setne cl
cmp dword [rsp + 0xa0], r15d
cmova eax, ecx
cmp eax, r15d
je 0x7ff74b143f9
mov rcx, qword [0x7ff74b58418]
call fcn.7ff74ae3010
mov eax, dword [0x7ff74b582c8]
lea r9, [0x7ff74b58350]
cmp eax, r15d
je 0x7ff74b14458
mov rcx, qword [0x7ff74b58350]
cmp rcx, r9
je 0x7ff74aeea3a
test byte [rcx + 0x1c], 8
jne 0x7ff74b14407
mov r8, qword [rsi]
lea rdx, [0x7ff74b48970]
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], rdx
cmp eax, r15d
je 0x7ff74aeea62
cmp rcx, r9
je 0x7ff74aeea62
test byte [rcx + 0x1c], 0x20
jne 0x7ff74b14464
mov rcx, qword [0x7ff74b58438]
lea rdx, [rsp + 0x40]
call fcn.7ff74ae3770
mov r15, rax
test rax, rax
je 0x7ff74b14489
test ebx, ebx
je 0x7ff74aeea90
mov r8, r13
mov edx, ebx
mov rcx, r12
call fcn.7ff74aeed30
xor ebx, ebx
mov dword [rdi], ebx
mov esi, ebx
cmp dword [rsp + 0xa0], ebx
jbe 0x7ff74aeeb5c
lea r13, [0x7ff74b48980]
lea rcx, [rsp + 0x88]
call fcn.7ff74aee924
cmp eax, ebx
je 0x7ff74aeeb5c
mov rcx, qword [0x7ff74b584e0]
xor edx, edx
lea r8d, [rdx + 0x58]
call qword [0x7ff74b58358]
cmp rax, rbx
je 0x7ff74aeeaed
mov r8, qword [rsp + 0x88]
mov rdx, r15
mov rcx, rax
call fcn.7ff74aeebb0
mov rbx, rax
test rbx, rbx
je 0x7ff74b1455d
inc dword [rdi]
cmp dword [0x7ff74b582c8], 0
mov rax, qword [rsp + 0x88]
mov qword [r14], rax
je 0x7ff74aeeb29
mov rcx, qword [0x7ff74b58350]
lea rax, [0x7ff74b58350]
cmp rcx, rax
je 0x7ff74aeeb29
test byte [rcx + 0x1c], 8
jne 0x7ff74b1450d
mov rcx, qword [0x7ff74b58450]
mov rdx, rbx
call fcn.7ff74ae3cf4
mov r11, qword [rbx]
mov rcx, rbx
call qword [r11 + 0x10]
inc esi
add r14, 8
mov ebx, 0
cmp esi, dword [rsp + 0xa0]
jb 0x7ff74aeeaaa
jmp 0x7ff74aeeb5c
mov rcx, qword [0x7ff74b58418]
lock add dword [rcx + 0x3c], 0xffffffff
mov dword [rcx + 0x40], ebx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [rsp + 0xa0], ebx
jbe 0x7ff74b06417
cmp dword [rdi], ebx
mov eax, 0xe
cmova eax, ebx
jmp 0x7ff74aeeb8a
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
xor eax, eax
jmp 0x7ff74aeeb8a
cmp rdi, r15
je 0x7ff74aeea02
jmp 0x7ff74b14564
mov rax, qword [r12 + 0xf0]
mov rcx, qword [rcx + 0x10]
lea r8, [0x7ff74b48980]
cmp rax, r15
mov edx, 0x3d
mov r9, r12
cmovne r8, rax
mov rax, qword [rsi]
mov qword [rsp + 0x30], rax
mov eax, dword [r12 + 0x60]
mov qword [rsp + 0x28], r8
lea r8, [0x7ff74b51050]
mov dword [rsp + 0x20], eax
call fcn.7ff74b2707c
mov eax, dword [0x7ff74b582c8]
lea r9, [0x7ff74b58350]
mov rcx, qword [0x7ff74b58350]
jmp 0x7ff74aeea3a
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r8
lea r9, [rsp + 0x40]
lea r8, [0x7ff74b51c50]
mov edx, 0xa
call fcn.7ff74b26260
nop
jmp 0x7ff74aeea62
cmp dword [0x7ff74b582c8], eax
je 0x7ff74b144ed
mov rcx, qword [0x7ff74b58350]
lea rax, [0x7ff74b58350]
cmp rcx, rax
je 0x7ff74b144ed
test byte [rcx + 0x1c], 1
je 0x7ff74b144ed
mov rax, qword [r12 + 0xf0]
mov rcx, qword [rcx + 0x10]
lea r13, [0x7ff74b48980]
test rax, rax
lea edx, [r15 + 0x3e]
lea r8, [0x7ff74b51050]
cmovne r13, rax
mov rax, qword [rsi]
mov r9, r12
mov qword [rsp + 0x30], rax
mov eax, dword [r12 + 0x60]
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], eax
call fcn.7ff74b2707c
mov rcx, qword [0x7ff74b58418]
lock add dword [rcx + 0x3c], 0xffffffff
and dword [rcx + 0x40], 0
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, 0x776
jmp 0x7ff74aeeb8a
mov rax, qword [r12 + 0xf0]
mov rcx, qword [rcx + 0x10]
mov r8, r13
test rax, rax
mov edx, 0x3f
mov r9, r12
cmovne r8, rax
mov rax, qword [r15 + 0x18]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x30], rax
mov eax, dword [r12 + 0x60]
mov qword [rsp + 0x28], r8
lea r8, [0x7ff74b51050]
mov dword [rsp + 0x20], eax
call fcn.7ff74b27eb0
nop
jmp 0x7ff74aeeb29
xor ebx, ebx
jmp 0x7ff74aeeb5c
mov eax, 0x57
jmp 0x7ff74aeeb8a