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

Disassembly:
push rbx
push rdi
sub rsp, 0x68
mov rax, qword [0x14015f0e8]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rdi, rcx
mov qword [rsp + 0x50], r15
mov rcx, qword [rcx + 0x20]
mov r15d, edx
mov rcx, qword [rcx + 0x18]
call fcn.140110340
mov rcx, qword [rdi + 0x28]
call fcn.1400f9ea0
mov r8, qword [rdi]
test r8, r8
je 0x1400ed43b
mov rcx, qword [r8 + 0x18]
call fcn.140110340
mov r8, qword [rdi]
mov ebx, dword [rdi + 0x30]
mov ecx, ebx
call fcn.1400edb20
test eax, eax
jne 0x1400ed8a1
mov r9, qword [rdi + 0x28]
mov qword [rsp + 0x88], rbp
mov rcx, r9
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], r12
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x58], r14
call fcn.1400ef1e0
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x28], rax
call fcn.1400ef1e0
mov dword [rsp + 0x24], 0
mov r12, rax
test r8, r8
je 0x1400ed4aa
mov rcx, qword [r9 + 8]
cmp byte [rcx + 0x24], 2
jne 0x1400ed4aa
mov ebx, 5
jmp 0x1400ed4cc
mov rcx, r9
xor ebx, ebx
call fcn.1400ee190
test eax, eax
jne 0x1400ed4cc
xor r8d, r8d
xor edx, edx
call fcn.1400f6750
mov ebx, eax
mov dword [rsp + 0x24], 1
cmp dword [rdi + 0x14], 0
mov esi, 7
jne 0x1400ed4eb
test ebx, ebx
jne 0x1400ed514
mov rcx, rdi
call fcn.1400edc90
cmp eax, esi
jne 0x1400ed4ef
mov ebx, esi
jmp 0x1400ed514
test ebx, ebx
jne 0x1400ed514
cmp dword [rdi + 0x14], 0
jne 0x1400ed514
mov rcx, qword [rdi + 8]
lea r8, [rdi + 0x10]
mov edx, 2
call fcn.1400f6750
mov ebx, eax
test eax, eax
jne 0x1400ed514
mov dword [rdi + 0x14], 1
mov rdx, qword [rdi + 0x28]
mov rcx, rdx
call fcn.1400f7070
mov rcx, qword [rdi + 8]
movsxd r13, eax
call fcn.1400f7070
mov r8d, eax
mov dword [rsp + 0x20], eax
call fcn.1400ef1e0
mov rcx, rax
call fcn.1400fdb70
mov dword [rsp + 0x38], eax
test ebx, ebx
jne 0x1400ed564
cmp eax, 5
je 0x1400ed559
mov rcx, r12
call fcn.1400fe190
test eax, eax
je 0x1400ed564
cmp r13d, r8d
mov eax, 8
cmovne ebx, eax
mov rcx, rdx
call fcn.1400f7c60
mov r14d, eax
xor ebp, ebp
test r15d, r15d
js 0x1400ed57b
cmp ebp, r15d
jge 0x1400ed5ec
mov esi, dword [rdi + 0x18]
cmp esi, r14d
ja 0x1400ed5ec
test ebx, ebx
jne 0x1400ed61b
mov rax, qword [rdi + 0x28]
xor edx, edx
mov rcx, qword [rax + 8]
mov eax, dword [0x140161788]
div dword [rcx + 0x34]
inc eax
cmp esi, eax
je 0x1400ed5e5
mov rcx, qword [rsp + 0x28]
lea r9d, [rbx + 2]
lea r8, [rsp + 0x40]
mov edx, esi
call fcn.1400fecd0
mov ebx, eax
test eax, eax
jne 0x1400ed5e5
mov rcx, qword [rsp + 0x40]
call fcn.1400fdd00
mov r8, rax
xor r9d, r9d
mov edx, esi
mov rcx, rdi
call fcn.1400ed990
mov rcx, qword [rsp + 0x40]
mov ebx, eax
call fcn.1400fec50
inc dword [rdi + 0x18]
inc ebp
jmp 0x1400ed571
test ebx, ebx
jne 0x1400ed61b
mov eax, r14d
mov dword [rdi + 0x38], r14d
sub eax, dword [rdi + 0x18]
inc eax
mov dword [rdi + 0x34], eax
cmp dword [rdi + 0x18], r14d
ja 0x1400ed624
cmp dword [rdi + 0x3c], ebx
jne 0x1400ed84e
mov rcx, rdi
call fcn.1400ed8f0
jmp 0x1400ed84e
cmp ebx, 0x65
jne 0x1400ed84e
test r14d, r14d
jne 0x1400ed647
mov rcx, qword [rdi + 8]
call fcn.1400f6a60
mov ebx, eax
mov r14d, 1
test eax, eax
je 0x1400ed647
cmp eax, 0x65
jne 0x1400ed84e
mov r8d, dword [rdi + 0x10]
mov edx, 1
mov rcx, qword [rdi + 8]
inc r8d
call fcn.1400ef310
mov ebx, eax
test eax, eax
jne 0x1400ed84e
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400ed673
call fcn.1400c7d20
cmp dword [rsp + 0x38], 5
jne 0x1400ed692
mov rcx, qword [rdi + 8]
mov edx, 2
call fcn.1400ede40
mov ebx, eax
test eax, eax
jne 0x1400ed84e
mov ecx, dword [rsp + 0x20]
cmp r13d, ecx
jge 0x1400ed813
mov eax, ecx
movsxd r10, r14d
cdq
mov r15, r13
idiv r13d
imul r10, r13
mov ecx, eax
dec eax
add eax, r14d
mov qword [rsp + 0x30], r10
cdq
idiv ecx
mov rcx, r12
mov r9d, eax
call fcn.1400fded0
lea rdx, [rsp + 0x38]
mov r14, rax
call fcn.140100360
mov rcx, qword [rdi + 8]
lea esi, [r9 - 1]
mov eax, dword [0x140161788]
xor edx, edx
mov ebp, dword [rsp + 0x38]
mov r8, qword [rcx + 8]
div dword [r8 + 0x34]
inc eax
cmp r9d, eax
cmovne esi, r9d
nop dword [rax + rax]
cmp esi, ebp
ja 0x1400ed756
mov rax, qword [rdi + 8]
xor edx, edx
mov rcx, qword [rax + 8]
mov eax, dword [0x140161788]
div dword [rcx + 0x34]
inc eax
cmp esi, eax
je 0x1400ed74b
xor r9d, r9d
lea r8, [rsp + 0x40]
mov edx, esi
mov rcx, r12
call fcn.1400fecd0
mov ebx, eax
test eax, eax
jne 0x1400ed74b
mov rcx, qword [rsp + 0x40]
call fcn.1400fe6c0
mov rcx, qword [rsp + 0x40]
mov ebx, eax
call fcn.1400fec50
inc esi
test ebx, ebx
je 0x1400ed700
jmp 0x1400ed84e
test ebx, ebx
jne 0x1400ed76a
xor edx, edx
lea r8d, [rbx + 1]
mov rcx, r12
call fcn.1400fe3b0
mov ebx, eax
mov ecx, dword [0x140161788]
mov eax, dword [rsp + 0x20]
add eax, ecx
movsxd rbp, eax
cmp rbp, qword [rsp + 0x30]
lea eax, [rcx + r13]
movsxd rsi, eax
cmovge rbp, qword [rsp + 0x30]
test ebx, ebx
jne 0x1400ed84e
cmp rsi, rbp
jge 0x1400ed7f4
mov rcx, qword [rsp + 0x28]
lea r8, [rsp + 0x38]
mov rax, rsi
mov qword [rsp + 0x38], 0
cqo
xor r9d, r9d
idiv r15
lea edx, [rax + 1]
call fcn.1400fecd0
mov ebx, eax
test eax, eax
jne 0x1400ed7e1
mov rcx, qword [rsp + 0x38]
call fcn.1400fdd00
mov rdx, rax
mov r9, rsi
mov r8d, r13d
mov rcx, r14
call fcn.140110d30
mov ebx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1400fec50
add rsi, r15
test ebx, ebx
je 0x1400ed793
jmp 0x1400ed84e
mov rdx, qword [rsp + 0x30]
mov rcx, r14
call fcn.1400ed930
mov ebx, eax
test eax, eax
jne 0x1400ed84e
xor edx, edx
mov rcx, r12
call fcn.1400fe590
jmp 0x1400ed831
mov eax, r13d
cdq
idiv ecx
mov rcx, r12
imul eax, r14d
mov edx, eax
call fcn.1401002f0
xor r8d, r8d
xor edx, edx
call fcn.1400fe3b0
mov ebx, eax
test eax, eax
jne 0x1400ed84e
mov rcx, qword [rdi + 8]
xor edx, edx
call fcn.1400f5bc0
mov ebx, eax
mov eax, 0x65
test ebx, ebx
cmove ebx, eax
cmp dword [rsp + 0x24], 0
mov r14, qword [rsp + 0x58]
mov r13, qword [rsp + 0x60]
mov r12, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x88]
je 0x1400ed88d
mov rcx, qword [rdi + 0x28]
xor edx, edx
call fcn.1400f5cd0
mov rcx, qword [rdi + 0x28]
xor edx, edx
call fcn.1400f5bc0
mov r8, qword [rdi]
cmp ebx, 0xc0a
mov eax, 7
cmove ebx, eax
mov dword [rdi + 0x30], ebx
mov r15, qword [rsp + 0x50]
test r8, r8
je 0x1400ed8b4
mov rcx, qword [r8 + 0x18]
call fcn.140110300
mov rcx, qword [rdi + 0x28]
call fcn.1400f9df0
mov rcx, qword [rdi + 0x20]
mov rcx, qword [rcx + 0x18]
call fcn.140110300
mov eax, ebx
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14004b440
add rsp, 0x68
pop rdi
pop rbx
ret