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

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rsi, qword [rcx + 0x10]
mov r13, rcx
mov rcx, qword [rdx + 0x60]
mov rbx, rdx
mov qword [rsp + 0x38], rcx
mov r15d, r8d
mov eax, dword [r13 + 0x3c]
mov rdx, qword [rcx + 0x20]
movzx r14d, word [rcx + 0x3e]
movzx ecx, word [rcx + 0x18]
mov dword [rsp + 0xa8], ecx
lea r12d, [rax + 1]
add ecx, r9d
add eax, ecx
mov dword [rsp + 0x90], ecx
mov dword [r13 + 0x3c], eax
mov rdi, qword [rdx + 0x20]
test rdi, rdi
jne 0x1400df63f
mov rcx, qword [r13]
call fcn.1400ad820
mov rdi, rax
test rax, rax
jne 0x1400df63f
xor r9d, r9d
mov qword [rsp + 0x30], r9
jmp 0x1400df690
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdi + rbx], 0
jne 0x1400df646
mov rcx, qword [r13]
inc rbx
test rcx, rcx
je 0x1400df665
mov rdx, rbx
call fcn.1400379d0
jmp 0x1400df66d
mov rcx, rbx
call fcn.140037240
mov qword [rsp + 0x30], rax
test rax, rax
je 0x1400df685
mov r8, rbx
mov rdx, rdi
mov rcx, rax
call fcn.1401653e0
mov rbx, qword [rsp + 0x98]
xor r9d, r9d
mov qword [rsp + 0x48], rbp
test r14w, r14w
je 0x1400df8e2
movsxd rcx, dword [rsi + 0x90]
lea edx, [r14 - 1]
mov edi, dword [rbx + 8]
add edx, r12d
cmp dword [rsi + 0x94], ecx
jg 0x1400df6d4
mov dword [rsp + 0x20], edx
mov r9d, r12d
mov edx, 0x4b
xor r8d, r8d
mov rcx, rsi
call fcn.1400653b0
xor r9d, r9d
jmp 0x1400df6fe
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
movsxd rcx, dword [rsi + 0x90]
test r15d, r15d
mov edx, 0x24
mov eax, 0x20
cmovne edx, eax
cmp dword [rsi + 0x94], ecx
jg 0x1400df735
mov dword [rsp + 0x20], r9d
mov r8d, edi
xor r9d, r9d
mov rcx, rsi
call fcn.1400653b0
xor r9d, r9d
jmp 0x1400df769
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], r9w
mov dword [rax + rcx*8 + 4], edi
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r9
mov byte [rax + rcx*8 + 1], 0
movsxd rbx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ebx
jg 0x1400df797
mov dword [rsp + 0x20], r9d
xor r8d, r8d
xor r9d, r9d
mov edx, 9
mov rcx, rsi
call fcn.1400653b0
mov ebx, eax
xor r9d, r9d
jmp 0x1400df7c1
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 9
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r9
movsxd r8, dword [rsi + 0x90]
test r15d, r15d
mov edx, 0x18
mov eax, 0x15
cmovne edx, eax
cmp dword [rsi + 0x94], r8d
jg 0x1400df801
mov dword [rsp + 0x28], r14d
xor r9d, r9d
mov r8d, edi
mov dword [rsp + 0x20], r12d
mov rcx, rsi
call fcn.140065410
mov r8d, eax
xor r9d, r9d
jmp 0x1400df837
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], r9w
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r12d
mov dword [rax + rcx*8 + 0x10], r14d
mov byte [rax + rcx*8 + 1], 0xfd
mov r10, qword [rsp + 0x98]
mov dword [r10 + 0x14], r8d
mov rax, qword [rsi]
mov edx, dword [rsi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1400df85b
lea rax, [0x1401acba0]
jmp 0x1400df86d
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov ebx, r9d
test r14d, r14d
je 0x1400df8ea
nop dword [rax + rax]
movsxd rcx, dword [rsi + 0x90]
lea edx, [r12 + rbx]
cmp dword [rsi + 0x94], ecx
jg 0x1400df8af
mov dword [rsp + 0x20], edx
mov r9d, ebx
mov edx, 0x5e
mov r8d, edi
mov rcx, rsi
call fcn.1400653b0
xor r9d, r9d
jmp 0x1400df8db
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
inc ebx
cmp ebx, r14d
jl 0x1400df880
mov r10, qword [rsp + 0x98]
mov r15, r14
cmp r14d, dword [rsp + 0xa8]
jae 0x1400dfb9e
mov r14, qword [rsp + 0x30]
lea rbp, [r15*8]
add r14, r15
nop dword [rax + rax]
mov rax, qword [rsp + 0x38]
lea edi, [r15 + r12]
mov dword [rsp + 0x28], edi
mov r9d, r15d
mov r8, r10
mov rcx, r13
mov rax, qword [rax + 0x48]
mov rbx, qword [rax + rbp]
mov eax, dword [rsp + 0xa0]
mov rdx, rbx
mov dword [rsp + 0x20], eax
call fcn.1400df470
mov edx, eax
cmp eax, edi
je 0x1400df96e
cmp dword [rsp + 0x90], 1
jne 0x1400df9a4
test r12d, r12d
je 0x1400df96b
movzx eax, byte [r13 + 0x1f]
cmp al, 8
jae 0x1400df96b
mov dword [r13 + rax*4 + 0xe8], r12d
inc byte [r13 + 0x1f]
mov r12d, edx
xor r9d, r9d
movzx eax, word [rbx + 0x14]
test al, 1
je 0x1400dfa03
mov rax, qword [rbx]
test dword [rax + 4], 0x1000
mov rax, qword [rsp + 0x30]
je 0x1400dfb71
test rax, rax
je 0x1400dfb71
mov byte [r14], 0x41
jmp 0x1400dfb71
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400df9ce
xor eax, eax
mov r8d, edx
mov edx, 0x50
mov dword [rsp + 0x20], eax
mov r9d, edi
mov rcx, rsi
call fcn.1400653b0
jmp 0x1400df96e
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x50
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x1400df971
bt ax, 8
jb 0x1400dfb6c
mov rax, qword [rbx]
mov rdi, qword [rax + 0x18]
mov eax, 0x800
test word [rbx + 0x12], ax
jne 0x1400dfb1d
mov rcx, rdi
nop word [rax + rax]
movzx edx, byte [rcx]
lea eax, [rdx + 0x53]
cmp al, 1
ja 0x1400dfa40
mov rcx, qword [rcx + 0x10]
jmp 0x1400dfa30
cmp dl, 0xb0
jne 0x1400dfa49
movzx edx, byte [rcx + 2]
movzx edx, dl
sub edx, 0x76
je 0x1400dfb1d
sub edx, 0x24
je 0x1400dfb1d
sub edx, 1
je 0x1400dfb1d
sub edx, 1
je 0x1400dfb1d
cmp edx, 0xc
jne 0x1400dfaba
test dword [rcx + 4], 0x200000
jne 0x1400dfab1
mov rax, qword [rcx + 0x40]
test rax, rax
je 0x1400dfab1
movsx rdx, word [rcx + 0x30]
test dx, dx
js 0x1400dfaac
mov r8, qword [rax + 8]
test r8, r8
je 0x1400dfaac
cmp dx, word [rax + 0x36]
jge 0x1400dfaac
lea rcx, [rdx + rdx*2]
test byte [r8 + rcx*8 + 8], 0xf
je 0x1400dfab1
mov eax, r9d
jmp 0x1400dfab6
mov eax, 1
test eax, eax
je 0x1400dfb1d
mov rdx, qword [rsp + 0x98]
lea r8d, [r15 + r12]
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [rdx + 0xc]
cmp dword [rsi + 0x94], ecx
jg 0x1400dfaef
mov dword [rsp + 0x20], r9d
mov rcx, rsi
mov r9d, edx
mov edx, 0x33
call fcn.1400653b0
jmp 0x1400dfb1d
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x33
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
cmp dword [r13 + 0x34], 0
jne 0x1400dfb6c
movzx ebx, byte [r14]
mov rcx, rdi
call fcn.14007ea00
cmp al, 0x40
jle 0x1400dfb44
cmp bl, 0x40
jle 0x1400dfb47
cmp al, 0x43
jge 0x1400dfb51
cmp bl, 0x43
jge 0x1400dfb51
jmp 0x1400dfb4d
movzx eax, bl
or al, 0x40
cmp al, 0x41
jne 0x1400dfb51
mov byte [r14], 0x41
movzx edx, byte [r14]
mov rcx, rdi
call fcn.140082c30
test eax, eax
mov rax, qword [rsp + 0x30]
je 0x1400dfb71
mov byte [r14], 0x41
jmp 0x1400dfb71
mov rax, qword [rsp + 0x30]
mov r10, qword [rsp + 0x98]
inc r15d
add rbp, 8
inc r14
cmp r15d, dword [rsp + 0xa8]
jl 0x1400df910
mov rcx, qword [rsp + 0xb0]
mov qword [rcx], rax
jmp 0x1400dfbae
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
mov rbp, qword [rsp + 0x48]
mov eax, r12d
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret