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

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x3c0
mov qword [rsp + 0x80], 0xfffffffffffffffe
mov qword [rsp + 0x410], rbx
mov rax, qword [0x14035e6e8]
xor rax, rsp
mov qword [rsp + 0x3b0], rax
mov r10, r9
mov qword [rsp + 0x40], r9
mov r14d, r8d
mov rsi, rdx
mov r15, rcx
mov rdi, qword [rsp + 0x420]
mov qword [rsp + 0x78], rdi
cmp dword [rdi], 0
jg 0x1401d1c50
test rcx, rcx
je 0x1401d147f
test rdx, rdx
je 0x1401d1c4a
cmp r8d, 0x17
jbe 0x1401d1c4a
cmp byte [rdx + 2], 0xda
jne 0x1401d1a08
cmp byte [rdx + 3], 0x27
jne 0x1401d1a08
lea r9, [rdx + 4]
lea rcx, [r10 + 0x148]
xor r8d, r8d
xor edx, edx
call fcn.1401d1350
test al, al
je 0x1401d1a08
mov rcx, qword [rsp + 0x40]
call fcn.1401d2080
mov ebx, eax
mov rcx, r15
call fcn.1401d2080
cmp eax, ebx
je 0x1401d146c
mov dword [rdi], 0x1c
jmp 0x1401d1c50
movzx eax, word [rsi]
add rsi, rax
mov r10, qword [rsp + 0x40]
test r14d, r14d
js 0x1401d147f
sub r14d, eax
test rsi, rsi
je 0x1401d1c4a
cmp r14d, 7
jbe 0x1401d1c4a
mov ebp, dword [rsi]
cmp ebp, 2
jl 0x1401d1a08
test r14d, r14d
js 0x1401d14b2
lea eax, [rbp*4]
cmp r14d, eax
jl 0x1401d1a08
cmp ebp, 0x13
jle 0x1401d14bc
mov eax, dword [rsi + 0x4c]
jmp 0x1401d14ce
cmp ebp, 5
jle 0x1401d14cc
lea eax, [rbp - 1]
movsxd rcx, eax
mov eax, dword [rsi + rcx*4]
jmp 0x1401d14ce
xor eax, eax
test r14d, r14d
js 0x1401d14dc
cmp r14d, eax
jl 0x1401d1a08
test r15, r15
jne 0x1401d14e6
xor r13d, r13d
jmp 0x1401d14ea
mov r13, qword [r15 + 0x18]
mov qword [rsp + 0x50], 0
xor r9d, r9d
mov dword [rsp + 0x48], r9d
mov qword [rsp + 0x70], r9
xor r11d, r11d
mov dword [rsp + 0x58], r11d
or r12d, 0xffffffff
cmp ebp, 5
jle 0x1401d1516
mov ecx, dword [rsi + 0x14]
jmp 0x1401d1519
mov ecx, r12d
cmp ebp, 6
jle 0x1401d1523
mov eax, dword [rsi + 0x18]
jmp 0x1401d1526
mov eax, r12d
sub eax, ecx
cmp eax, 4
jl 0x1401d1595
test r13, r13
je 0x1401d1a08
movsxd rbx, ecx
add rbx, rsi
mov qword [rsp + 0x50], rbx
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd r9, eax
mov dword [rsp + 0x48], r9d
xor edx, edx
test eax, eax
jle 0x1401d1595
lea rcx, [r9 - 1]
lea rcx, [rbx + rcx*4]
test dword [rcx], 0xffff0000
je 0x1401d1577
inc r11d
inc rdx
sub rcx, 4
cmp rdx, r9
jl 0x1401d1560
mov dword [rsp + 0x58], r11d
test r11d, r11d
je 0x1401d1595
sub r9d, r11d
mov dword [rsp + 0x48], r9d
movsxd rax, r9d
lea rax, [rbx + rax*4]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x68], 0
cmp ebp, 6
jle 0x1401d15a8
mov ecx, dword [rsi + 0x18]
jmp 0x1401d15ab
mov ecx, r12d
cmp ebp, 7
jle 0x1401d15b5
mov eax, dword [rsi + 0x1c]
jmp 0x1401d15b8
mov eax, r12d
sub eax, ecx
cmp eax, 0x100
jl 0x1401d15d5
test r9d, r9d
je 0x1401d1a08
movsxd rdx, ecx
add rdx, rsi
mov qword [rsp + 0x68], rdx
test r13, r13
je 0x1401d15ec
mov eax, dword [rsi + 4]
and eax, 0xff000000
cmp dword [r13 + 0x38], eax
jne 0x1401d1a08
xor ebx, ebx
cmp ebp, 7
jle 0x1401d15f9
mov r15d, dword [rsi + 0x1c]
jmp 0x1401d15fc
mov r15d, r12d
cmp ebp, 8
jle 0x1401d1607
mov r14d, dword [rsi + 0x20]
jmp 0x1401d160a
mov r14d, r12d
sub r14d, r15d
cmp r14d, 8
jl 0x1401d1675
mov rdx, rdi
mov rcx, r10
call fcn.1401d1f90
test al, al
je 0x1401d1c50
mov rcx, qword [rsp + 0x40]
mov rbx, qword [rcx + 0x150]
mov qword [rbx + 0x20], r13
mov eax, dword [rsi + 4]
and eax, 0xff000000
mov dword [rbx + 0x38], eax
movsxd rdx, r15d
add rdx, rsi
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8d, r14d
lea ecx, [r9 + 1]
call fcn.14015e0d0
mov r10, qword [rsp + 0x40]
mov qword [r10 + 0x170], rax
mov qword [rbx], rax
cmp dword [rdi], 0
jg 0x1401d1c50
jmp 0x1401d1682
test r13, r13
je 0x1401d1a08
mov qword [r10 + 0x18], r13
cmp ebp, 9
jle 0x1401d168c
mov ecx, dword [rsi + 0x24]
jmp 0x1401d168f
mov ecx, r12d
cmp ebp, 0xa
jle 0x1401d1699
mov eax, dword [rsi + 0x28]
jmp 0x1401d169c
mov eax, r12d
sub eax, ecx
cmp eax, 8
jl 0x1401d16c2
test rbx, rbx
je 0x1401d1a08
movsxd rcx, ecx
add rcx, rsi
mov qword [rbx + 0x10], rcx
cdq
and edx, 7
add eax, edx
sar eax, 3
mov dword [rbx + 0x40], eax
cmp ebp, 0xb
jle 0x1401d16cc
mov ecx, dword [rsi + 0x2c]
jmp 0x1401d16cf
mov ecx, r12d
cmp ebp, 0xc
jle 0x1401d16d9
mov eax, dword [rsi + 0x30]
jmp 0x1401d16dc
mov eax, r12d
sub eax, ecx
cmp eax, 4
jl 0x1401d1702
test rbx, rbx
je 0x1401d1a08
movsxd rcx, ecx
add rcx, rsi
mov qword [rbx + 8], rcx
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [rbx + 0x3c], eax
cmp ebp, 4
jle 0x1401d172f
movsxd rax, dword [rsi + 0x10]
test eax, eax
js 0x1401d172f
test rbx, rbx
je 0x1401d1a08
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1401d1a08
lea rcx, [rcx + rax*4]
mov qword [rbx + 0x28], rcx
jmp 0x1401d1745
test rbx, rbx
je 0x1401d1745
test r13, r13
je 0x1401d1a08
mov rax, qword [r13 + 0x28]
mov qword [rbx + 0x28], rax
cmp ebp, 0xc
jle 0x1401d174f
mov ecx, dword [rsi + 0x30]
jmp 0x1401d1752
mov ecx, r12d
cmp ebp, 0xd
jle 0x1401d175c
mov eax, dword [rsi + 0x34]
jmp 0x1401d175f
mov eax, r12d
sub eax, ecx
cmp eax, 4
jl 0x1401d17b4
cdq
and edx, 3
add eax, edx
sar eax, 2
test rbx, rbx
je 0x1401d1a08
cmp eax, 4
jle 0x1401d1a08
movsxd rdx, ecx
add rdx, rsi
mov qword [rbx + 0x80], rdx
mov dword [rbx + 0x88], eax
cmp dword [rdx + 0xc], 0x5000500
jne 0x1401d1a08
mov eax, dword [rdx + 0x10]
and eax, 0xff000000
cmp eax, 0x45000000
jb 0x1401d1a08
cmp ebp, 0xd
jle 0x1401d17be
mov ecx, dword [rsi + 0x34]
jmp 0x1401d17c1
mov ecx, r12d
cmp ebp, 0xe
jle 0x1401d17cb
mov eax, dword [rsi + 0x38]
jmp 0x1401d17ce
mov eax, r12d
sub eax, ecx
cmp eax, 2
jl 0x1401d17f0
test rbx, rbx
je 0x1401d1a08
movsxd rcx, ecx
add rcx, rsi
mov qword [rbx + 0x18], rcx
cdq
sub eax, edx
sar eax, 1
mov dword [rbx + 0x44], eax
cmp ebp, 0xe
jle 0x1401d17fb
mov r15d, dword [rsi + 0x38]
jmp 0x1401d17fe
mov r15d, r12d
cmp ebp, 0xf
jle 0x1401d1809
mov r14d, dword [rsi + 0x3c]
jmp 0x1401d180c
mov r14d, r12d
sub r14d, r15d
mov r11d, 0xff00
cmp r14d, 2
jl 0x1401d1995
test rbx, rbx
je 0x1401d1a08
test r13, r13
jne 0x1401d1886
mov ecx, 0xc8
call fcn.14011e8b0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x1401d185f
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8d, 0x352
lea rdx, [0x1402ea1c0]
mov rcx, rax
call fcn.140165f30
nop
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x178], rax
test rax, rax
jne 0x1401d187b
mov dword [rdi], 7
jmp 0x1401d1c50
cmp dword [rdi], 0
jg 0x1401d1c50
jmp 0x1401d18a0
mov rcx, qword [r13 + 0x50]
call fcn.140167360
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x178], rax
test rax, rax
je 0x1401d1870
mov eax, r14d
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
movsxd rdx, r15d
add rdx, rsi
lea rcx, [rsp + 0x88]
call fcn.14022fda0
test al, al
je 0x1401d1a08
lea rcx, [rsp + 0x88]
call fcn.14022fca0
mov r15d, eax
xor r14d, r14d
test eax, eax
jle 0x1401d1919
mov rdi, qword [rsp + 0x40]
lea r9, [rsp + 0x5c]
lea r8, [rsp + 0x60]
mov edx, r14d
lea rcx, [rsp + 0x88]
call fcn.14022fcc0
mov r8d, dword [rsp + 0x5c]
mov edx, dword [rsp + 0x60]
mov rcx, qword [rdi + 0x178]
call fcn.140166f40
inc r14d
cmp r14d, r15d
jl 0x1401d18e2
mov r15d, 0x10000
mov r14d, 0xd800
mov rdi, qword [rsp + 0x40]
mov r12d, 0xdc00
lea r8d, [r15 + 0x3ff]
mov edx, r15d
mov rcx, qword [rdi + 0x178]
call fcn.140167950
test al, al
jne 0x1401d195a
movzx edx, r14w
mov rcx, qword [rdi + 0x178]
call fcn.140166d40
inc r14w
add r15d, 0x400
cmp r14w, r12w
jb 0x1401d1930
mov rax, rdi
mov rcx, qword [rax + 0x178]
call fcn.140167e60
mov r10, rdi
mov rax, qword [rdi + 0x178]
mov rdi, qword [rsp + 0x78]
or r12d, 0xffffffff
mov r11d, 0xff00
jmp 0x1401d19a7
test rbx, rbx
je 0x1401d1a27
test r13, r13
je 0x1401d1a08
mov rax, qword [r13 + 0x50]
mov qword [rbx + 0x50], rax
xor eax, eax
mov qword [rbx + 0x58], rax
mov dword [rbx + 0x60], eax
mov eax, dword [rsi + 4]
and eax, 0xff0000
cmp eax, 0x20000
jne 0x1401d1a27
cmp ebp, 0xf
jle 0x1401d19cd
mov ecx, dword [rsi + 0x3c]
jmp 0x1401d19d0
mov ecx, r12d
cmp ebp, 0x10
jle 0x1401d19da
mov eax, dword [rsi + 0x40]
jmp 0x1401d19dd
mov eax, r12d
sub eax, ecx
cmp eax, 2
jl 0x1401d1a13
movsxd r8, ecx
add r8, rsi
mov qword [rbx + 0x58], r8
cdq
sub eax, edx
sar eax, 1
mov dword [rbx + 0x60], eax
movzx eax, word [r8]
and ax, r11w
mov ecx, 0x200
cmp ax, cx
je 0x1401d1a27
mov dword [rdi], 3
jmp 0x1401d1c50
test r13, r13
je 0x1401d1a27
mov rax, qword [r13 + 0x58]
mov qword [rbx + 0x58], rax
mov eax, dword [r13 + 0x60]
mov dword [rbx + 0x60], eax
cmp ebp, 0x10
jle 0x1401d1a31
mov ecx, dword [rsi + 0x40]
jmp 0x1401d1a34
mov ecx, r12d
cmp ebp, 0x11
jle 0x1401d1a3e
mov eax, dword [rsi + 0x44]
jmp 0x1401d1a41
mov eax, r12d
sub eax, ecx
mov r9d, 0x300
cmp eax, 2
jl 0x1401d1ab7
test rbx, rbx
je 0x1401d1a08
movsxd r8, ecx
add r8, rsi
movzx ecx, word [r8]
mov dword [rbx + 0x64], ecx
cdq
sub eax, edx
sar eax, 1
sub eax, ecx
lea edx, [rax - 0x11]
mov dword [rbx + 0x78], edx
lea eax, [rdx - 3]
cmp eax, 0xfd
ja 0x1401d1a08
lea rax, [r8 + 2]
mov qword [rbx + 0x68], rax
add rcx, 0x11
lea rcx, [r8 + rcx*2]
mov qword [rbx + 0x70], rcx
cmp word [rcx], 0
jne 0x1401d1a08
cmp word [rcx + 2], r9w
jne 0x1401d1a08
lea eax, [rdx - 1]
cdqe
cmp word [rcx + rax*2], r11w
je 0x1401d1adf
mov dword [rdi], 3
jmp 0x1401d1c50
test rbx, rbx
je 0x1401d1adf
test r13, r13
je 0x1401d1adf
mov eax, dword [r13 + 0x64]
mov dword [rbx + 0x64], eax
mov rax, qword [r13 + 0x68]
mov qword [rbx + 0x68], rax
mov rax, qword [r13 + 0x70]
mov qword [rbx + 0x70], rax
mov eax, dword [r13 + 0x78]
mov dword [rbx + 0x78], eax
cmp ebp, 0x11
jle 0x1401d1ae9
mov eax, dword [rsi + 0x44]
jmp 0x1401d1aec
mov eax, r12d
cmp ebp, 0x12
jle 0x1401d1af5
mov r12d, dword [rsi + 0x48]
sub r12d, eax
cmp r12d, 0x100
jl 0x1401d1b11
test rbx, rbx
je 0x1401d1a08
cdqe
add rax, rsi
jmp 0x1401d1b23
test rbx, rbx
je 0x1401d1b27
test r13, r13
je 0x1401d1a08
mov rax, qword [r13 + 0x48]
mov qword [rbx + 0x48], rax
lea r14, [r10 + 0x20]
mov rbx, qword [r14]
movzx esi, word [rsi + 4]
mov r9d, 0x180
lea r8, [rsp + 0xb0]
mov rdx, rbx
mov rcx, qword [r10 + 0x18]
call fcn.1401e0630
mov ebp, eax
mov r15d, dword [rsp + 0x48]
cmp esi, dword [rbx + 0x18]
jne 0x1401d1bb7
cmp dword [rbx + 0x1c], 0
je 0x1401d1bb7
cmp r15d, dword [rbx + 0x48]
jne 0x1401d1bb7
mov r12, qword [rsp + 0x50]
test r15d, r15d
je 0x1401d1b89
lea ecx, [r15*4]
movsxd r8, ecx
mov rdx, qword [rbx + 0x40]
mov rcx, r12
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1401d1bbc
cmp ebp, dword [rbx + 0x50]
jne 0x1401d1bbc
test ebp, ebp
js 0x1401d1c50
lea rdx, [rbx + 0x54]
mov r8d, 0x300
lea rcx, [rsp + 0xb0]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401d1c50
jmp 0x1401d1bbc
mov r12, qword [rsp + 0x50]
mov rcx, r14
call fcn.140169530
mov rbx, rax
test rax, rax
je 0x1401d1870
mov dword [rax + 0x18], esi
sar esi, 4
and esi, 7
lea edx, [rsi + 0x1000]
mov rsi, qword [rsp + 0x40]
mov rcx, qword [rsi + 0x18]
call fcn.14016e780
mov dword [rbx + 0x1c], eax
test eax, eax
je 0x1401d1a08
test r15d, r15d
je 0x1401d1c2f
mov qword [rsp + 0x38], rdi
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, r15d
mov r8, r12
mov rdx, r13
mov rcx, rbx
call fcn.1401e5bf0
lea r8, [rbx + 0x54]
mov r9d, 0x180
mov rdx, rbx
mov rcx, qword [rsi + 0x18]
call fcn.1401e0630
mov dword [rbx + 0x50], eax
jmp 0x1401d1c50
mov dword [rdi], 1
mov rcx, qword [rsp + 0x3b0]
xor rcx, rsp
call fcn.140250070
mov rbx, qword [rsp + 0x410]
add rsp, 0x3c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret