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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov r9, rcx
mov rax, qword [0x14019ac40]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rax, qword [rcx + 0x8a8]
mov qword [rsp + 0x58], rax
cmp byte [rax + 0x60], 0
mov qword [rsp + 0x50], rcx
je 0x1400ab549
mov dword [rsp + 0x60], 0
mov r10d, dword [r9 + 8]
test r10d, r10d
je 0x1400aba87
mov r11, qword [r9]
mov r12, qword [r11]
mov edi, dword [r11 + 0x84]
mov esi, dword [r12 + 0x78]
mov r13d, dword [r12 + 0x7c]
mov r15b, 1
mov dword [rsp + 0x40], 0xffffffff
xor ebx, ebx
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x34], 0
mov dword [rsp + 0x30], 0
xor r14d, r14d
xor r8d, r8d
xor ecx, ecx
mov dword [rsp + 0x4c], 0
mov dword [rsp + 0x48], edi
mov dword [rsp + 0x44], esi
mov ebp, r13d
mov dword [rsp + 0x3c], r10d
nop
cmp r13d, ebp
jb 0x1400ab1ef
cmp esi, dword [rsp + 0x44]
jb 0x1400aba41
cmp edi, dword [rsp + 0x48]
jae 0x1400ab1ef
cmp dword [rsp + 0x44], esi
jae 0x1400aba41
mov rdx, rbx
shl rdx, 7
lea rsi, [rdx + rbx*8]
mov edx, dword [r11 + rsi + 0x18]
test edx, edx
je 0x1400ab240
cmp edx, 1
setne bl
mov ebp, dword [rsp + 0x60]
cmp ebp, 2
setne al
cmp ebp, 4
setne dl
and dl, al
and dl, bl
xor ebx, ebx
test r8b, 1
jne 0x1400ab250
test r15b, 1
sete al
add ebp, 0xfffffffd
cmp ebp, 1
seta bpl
or bpl, al
jmp 0x1400ab252
mov ebx, ecx
jmp 0x1400ab2da
xor ebp, ebp
mov r8d, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x38]
or dl, bpl
mov r15b, 1
cmp dl, 1
jne 0x1400ab2b0
mov dword [rsp + 0x40], 0xffffffff
test ecx, ecx
je 0x1400ab2bd
cmp ecx, r14d
jae 0x1400ab2bd
mov edx, r14d
mov r9, qword [rsp + 0x50]
call fcn.1400b0820
mov r10d, dword [rsp + 0x3c]
mov r9, qword [rsp + 0x50]
mov r11, qword [r9]
mov r12, qword [r11 + rsi]
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x34], 0
jmp 0x1400ab2cd
mov eax, r14d
mov dword [rsp + 0x34], r14d
xor r8d, r8d
jmp 0x1400ab2da
mov dword [rsp + 0x34], 0
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0
xor r8d, r8d
xor ebx, ebx
movzx edx, word [r12 + 0x10]
cmp dx, 4
movzx r15d, r15b
mov eax, 0
cmovne r15d, eax
cmp dx, 0x41
jne 0x1400ab310
add ebx, 1
cmp byte [r12 + 0x44], 0xa
je 0x1400ab366
jmp 0x1400ab500
mov ebp, dword [r12 + 0x7c]
cmp r13d, ebp
jae 0x1400ab350
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x68]
mov esi, r8d
mov r8, r9
mov r9d, r14d
call fcn.1400b03f0
mov r8d, esi
mov r14d, eax
add r14d, 0xffffffff
mov r10d, dword [rsp + 0x3c]
jmp 0x1400ab500
cmp ebp, r13d
jae 0x1400ab384
mov r10d, dword [rsp + 0x3c]
cmp byte [r12 + 0x44], 0xa
jne 0x1400ab500
cmp dx, 0x3d
je 0x1400ab3a9
cmp dx, 0x3c
jne 0x1400ab500
cmp dword [r11 + rsi + 0x18], 0
jne 0x1400ab500
jmp 0x1400ab3d7
mov ebp, dword [r12 + 0x78]
cmp dword [rsp + 0x44], ebp
jb 0x1400ab31a
mov eax, dword [rsp + 0x48]
cmp eax, dword [r11 + rsi + 0x84]
jae 0x1400ab355
cmp ebp, dword [rsp + 0x44]
jae 0x1400ab31a
jmp 0x1400ab355
mov rcx, qword [r12 + 0xd0]
test rcx, rcx
je 0x1400ab500
mov edx, dword [rcx + 0x98]
test rdx, rdx
je 0x1400ab3d7
mov rax, qword [rcx + 0x90]
cmp dword [rax + rdx*4 - 4], 3
je 0x1400ab500
test r8b, 1
jne 0x1400ab3ed
cmp ebx, dword [rsp + 0x4c]
jne 0x1400ab3ed
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x1400ab434
jmp 0x1400ab431
mov dword [rsp + 0x40], 0xffffffff
mov ecx, dword [rsp + 0x38]
test ecx, ecx
je 0x1400ab421
mov edx, dword [rsp + 0x34]
cmp ecx, edx
jae 0x1400ab421
mov r8d, dword [rsp + 0x30]
mov r9, qword [rsp + 0x50]
call fcn.1400b0820
mov r10d, dword [rsp + 0x3c]
mov r9, qword [rsp + 0x50]
mov r11, qword [r9]
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x34], 0
mov eax, r14d
mov dword [rsp + 0x38], eax
mov r12d, dword [r11 + rsi + 0x14]
mov ecx, dword [r11 + rsi + 0x6c]
lea edx, [r14 + 1]
cmp edx, r10d
jne 0x1400ab478
mov rax, qword [rsp + 0x58]
mov esi, dword [rax + 0x64]
sub esi, ecx
cmp r12d, dword [rsp + 0x40]
ja 0x1400ab4a1
cmp esi, dword [rsp + 0x30]
jb 0x1400ab4a1
mov edi, dword [rsp + 0x34]
mov eax, dword [rsp + 0x30]
jmp 0x1400ab4d4
add edx, 1
cmp r10d, edx
je 0x1400ab44b
mov edx, edx
mov rax, rdx
shl rax, 7
lea rbp, [rax + rdx*8]
cmp dword [r11 + rbp + 0x18], 0
jne 0x1400ab44b
add ecx, dword [r11 + rbp + 0x64]
cmp byte [r11 + rbp + 0x68], 0
jne 0x1400ab470
add ecx, dword [r11 + rbp + 0x6c]
jmp 0x1400ab470
xor edi, edi
mov dword [rsp + 0x40], 0xffffffff
mov ecx, dword [rsp + 0x38]
test ecx, ecx
je 0x1400ab4ca
mov edx, dword [rsp + 0x34]
cmp ecx, edx
jae 0x1400ab4ca
mov r8d, dword [rsp + 0x30]
call fcn.1400b0820
mov r10d, dword [rsp + 0x3c]
mov eax, r14d
mov dword [rsp + 0x38], r14d
xor eax, eax
cmp eax, r12d
cmovb eax, r12d
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x40]
cmp esi, eax
cmovb eax, esi
mov dword [rsp + 0x40], eax
mov r8b, 1
mov dword [rsp + 0x34], edi
mov dword [rsp + 0x4c], ebx
nop word [rax + rax]
add r14d, 1
cmp r14d, r10d
je 0x1400aba39
mov ecx, ebx
mov r9, qword [rsp + 0x50]
mov r11, qword [r9]
mov ebx, r14d
mov rax, rbx
shl rax, 7
lea rax, [rax + rbx*8]
mov r12, qword [r11 + rax]
mov edi, dword [r11 + rax + 0x84]
mov esi, dword [r12 + 0x78]
mov ebp, dword [r12 + 0x7c]
cmp ebp, r13d
jae 0x1400ab1d0
jmp 0x1400aba41
mov ecx, dword [r9 + 8]
test rcx, rcx
je 0x1400ab5eb
mov rax, qword [r9]
mov rdx, rcx
shl rdx, 7
lea rcx, [rdx + rcx*8]
add rcx, rax
jmp 0x1400ab57b
add dword [rax + 0x14], 0xfffffffe
nop dword [rax]
add rax, 0x88
cmp rax, rcx
je 0x1400ab5d9
mov rbx, qword [rax]
mov rdx, rbx
nop word cs:[rax + rax]
nop dword [rax + rax]
mov rdx, qword [rdx + 0xc8]
test rdx, rdx
je 0x1400ab570
movzx ebp, word [rdx + 0x10]
cmp bp, 4
je 0x1400ab590
cmp dword [rax + 0x18], 0
je 0x1400ab570
cmp byte [rdx + 0x44], 0xa
jne 0x1400ab570
cmp bp, 0x3c
je 0x1400ab569
cmp bp, 0x3d
jne 0x1400ab570
mov edx, dword [rbx + 0x98]
test rdx, rdx
je 0x1400ab569
mov rbp, qword [rbx + 0x90]
cmp dword [rbp + rdx*4 - 4], 3
jne 0x1400ab569
jmp 0x1400ab570
mov rax, qword [r9 + 0x8a8]
mov qword [rsp + 0x58], rax
mov r8d, dword [r9 + 8]
jmp 0x1400ab5ee
xor r8d, r8d
mov dword [rsp + 0x68], 0
mov qword [rsp + 0x60], r9
test r8d, r8d
je 0x1400aba87
mov rdi, qword [r9]
mov rcx, qword [rdi]
mov ebp, dword [rdi + 0x84]
mov edx, dword [rcx + 0x78]
mov r15d, dword [rcx + 0x7c]
mov r12b, 1
mov dword [rsp + 0x48], 0xffffffff
xor r10d, r10d
xor ecx, ecx
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x34], 0
xor r11d, r11d
xor r14d, r14d
xor r13d, r13d
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x4c], 0
mov dword [rsp + 0x40], ebp
mov dword [rsp + 0x44], edx
mov esi, r15d
mov dword [rsp + 0x3c], r8d
cmp r15d, esi
jb 0x1400ab67f
cmp edx, dword [rsp + 0x44]
jb 0x1400aba65
cmp ebp, dword [rsp + 0x40]
jae 0x1400ab67f
cmp dword [rsp + 0x44], edx
jae 0x1400aba65
mov rdx, rcx
shl rdx, 7
lea rbp, [rdx + rcx*8]
mov ecx, dword [rdi + rbp + 0x18]
test ecx, ecx
je 0x1400ab77d
cmp ecx, 1
setne cl
mov edx, dword [rsp + 0x68]
cmp edx, 2
setne al
cmp edx, 4
setne bl
and bl, al
and bl, cl
mov dword [rsp + 0x38], 0
test r13b, 1
jne 0x1400ab6e0
test r12b, 1
sete al
add edx, 0xfffffffd
cmp edx, 1
seta dl
or dl, al
jmp 0x1400ab6e2
xor edx, edx
mov ecx, dword [rsp + 0x30]
or bl, dl
mov r12b, 1
cmp bl, 1
jne 0x1400ab740
test ecx, ecx
je 0x1400ab74d
mov dword [rsp + 0x48], 0xffffffff
cmp ecx, r14d
jae 0x1400ab75f
mov qword [rsp + 0x20], r9
mov edx, r14d
mov r8d, r11d
lea r9, [rsp + 0x60]
call fcn.1400b1090
xor r10d, r10d
mov r8d, dword [rsp + 0x3c]
mov r9, qword [rsp + 0x50]
mov rdi, qword [r9]
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x34], 0
jmp 0x1400ab76f
mov eax, r14d
mov dword [rsp + 0x34], r14d
xor r13d, r13d
jmp 0x1400ab77d
mov dword [rsp + 0x34], 0
mov dword [rsp + 0x48], 0xffffffff
jmp 0x1400ab767
mov dword [rsp + 0x34], 0
mov dword [rsp + 0x30], 0
xor r11d, r11d
xor r13d, r13d
mov dword [rsp + 0x38], 0
mov rcx, qword [rdi + rbp]
movzx edx, word [rcx + 0x10]
cmp dx, 4
movzx r12d, r12b
cmovne r12d, r10d
cmp dx, 0x41
jne 0x1400ab800
add dword [rsp + 0x38], 1
mov rdx, rcx
nop
mov rdx, qword [rdx + 0xc8]
test rdx, rdx
je 0x1400ab83c
movzx esi, word [rdx + 0x10]
cmp si, 4
je 0x1400ab7a0
cmp dword [rdi + rbp + 0x18], 0
je 0x1400ab83c
cmp byte [rdx + 0x44], 0xa
jne 0x1400ab83c
cmp si, 0x3c
je 0x1400ab8e4
cmp si, 0x3d
jne 0x1400ab83c
mov edx, dword [rcx + 0x98]
test rdx, rdx
je 0x1400ab8e4
mov rax, qword [rcx + 0x90]
cmp dword [rax + rdx*4 - 4], 3
je 0x1400ab83c
jmp 0x1400ab8e4
mov esi, dword [rcx + 0x7c]
cmp r15d, esi
jae 0x1400ab880
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x60]
mov r8, r9
mov r9d, r14d
mov esi, r11d
call fcn.1400b0bb0
mov r11d, esi
xor r10d, r10d
mov r14d, eax
add r14d, 0xffffffff
mov r8d, dword [rsp + 0x3c]
add r14d, 1
cmp r14d, r8d
je 0x1400aba5d
mov r9, qword [rsp + 0x50]
mov rdi, qword [r9]
mov ecx, r14d
mov rax, rcx
shl rax, 7
lea rax, [rax + rcx*8]
mov rbx, qword [rdi + rax]
mov ebp, dword [rdi + rax + 0x84]
mov edx, dword [rbx + 0x78]
mov esi, dword [rbx + 0x7c]
cmp esi, r15d
jae 0x1400ab660
jmp 0x1400aba65
cmp esi, r15d
jae 0x1400ab902
cmp dx, 0x3c
jne 0x1400ab92f
cmp byte [rcx + 0x44], 0xa
jne 0x1400ab92f
lea rdx, [rdi + rbp]
mov rax, qword [rsp + 0x60]
mov rsi, qword [rax]
mov ebx, dword [rax + 8]
mov rax, rbx
shl rax, 7
lea rax, [rax + rbx*8]
add rax, rsi
add rax, 0xffffffffffffff78
cmp rax, rdx
mov r8d, dword [rsp + 0x3c]
je 0x1400ab79c
cmp dword [rdx + 0xa0], 0
jne 0x1400ab79c
cmp byte [rdx + 0xf1], 0
jne 0x1400ab79c
test r13b, 1
jne 0x1400ab939
mov eax, dword [rsp + 0x4c]
cmp dword [rsp + 0x38], eax
jne 0x1400ab939
mov ecx, dword [rsp + 0x30]
test ecx, ecx
mov ebx, dword [rsp + 0x48]
jne 0x1400ab97e
jmp 0x1400ab97b
mov esi, dword [rcx + 0x78]
cmp dword [rsp + 0x44], esi
jb 0x1400ab808
mov eax, dword [rsp + 0x40]
cmp eax, dword [rdi + rbp + 0x84]
jae 0x1400ab885
cmp esi, dword [rsp + 0x44]
jae 0x1400ab808
jmp 0x1400ab885
mov r8d, dword [rsp + 0x3c]
jmp 0x1400ab79c
mov ebx, 0xffffffff
mov ecx, dword [rsp + 0x30]
test ecx, ecx
mov edx, dword [rsp + 0x34]
je 0x1400ab970
cmp ecx, edx
jae 0x1400ab970
mov qword [rsp + 0x20], r9
mov r8d, r11d
lea r9, [rsp + 0x60]
call fcn.1400b1090
xor r10d, r10d
mov r8d, dword [rsp + 0x3c]
mov r9, qword [rsp + 0x50]
mov rdi, qword [r9]
xor r11d, r11d
mov dword [rsp + 0x34], 0
mov ecx, r14d
mov r13d, dword [rdi + rbp + 0x14]
mov esi, dword [rdi + rbp + 0x6c]
lea edx, [r14 + 1]
cmp edx, r8d
jne 0x1400ab9b8
mov rax, qword [rsp + 0x58]
mov ebp, dword [rax + 0x64]
sub ebp, esi
cmp r13d, ebx
ja 0x1400ab9dd
cmp ebp, r11d
jb 0x1400ab9dd
mov dword [rsp + 0x30], ecx
mov esi, dword [rsp + 0x34]
jmp 0x1400aba15
add edx, 1
cmp r8d, edx
je 0x1400ab990
mov edx, edx
mov rax, rdx
shl rax, 7
lea rbp, [rax + rdx*8]
cmp dword [rdi + rbp + 0x18], 0
jne 0x1400ab990
add esi, dword [rdi + rbp + 0x64]
cmp byte [rdi + rbp + 0x68], 0
jne 0x1400ab9b0
add esi, dword [rdi + rbp + 0x6c]
jmp 0x1400ab9b0
xor esi, esi
mov ebx, 0xffffffff
test ecx, ecx
je 0x1400aba0a
mov edx, dword [rsp + 0x34]
cmp ecx, edx
jae 0x1400aba0a
mov qword [rsp + 0x20], r9
mov r8d, r11d
lea r9, [rsp + 0x60]
call fcn.1400b1090
xor r10d, r10d
mov r8d, dword [rsp + 0x3c]
mov eax, r14d
mov dword [rsp + 0x30], r14d
xor r11d, r11d
cmp r11d, r13d
cmovb r11d, r13d
cmp ebp, ebx
cmovb ebx, ebp
mov dword [rsp + 0x48], ebx
mov r13b, 1
mov dword [rsp + 0x34], esi
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x4c], eax
jmp 0x1400ab83c
mov r14d, r10d
mov r9, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x38]
test ecx, ecx
je 0x1400aba87
cmp ecx, r14d
jae 0x1400aba87
mov edx, r14d
mov r8d, dword [rsp + 0x30]
call fcn.1400b0820
jmp 0x1400aba87
mov r14d, r8d
mov r9, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x30]
test ecx, ecx
je 0x1400aba87
cmp ecx, r14d
jae 0x1400aba87
mov qword [rsp + 0x20], r9
lea r9, [rsp + 0x60]
mov edx, r14d
mov r8d, r11d
call fcn.1400b1090
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.14016a260
nop
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret