Function at 0x1401d0be0
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 [0x14035d6e8]
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 0x1401d1490
test rcx, rcx
je 0x1401d0cbf
test rdx, rdx
je 0x1401d148a
cmp r8d, 0x17
jbe 0x1401d148a
cmp byte [rdx + 2], 0xda
jne 0x1401d1248
cmp byte [rdx + 3], 0x27
jne 0x1401d1248
lea r9, [rdx + 4]
lea rcx, [r10 + 0x148]
xor r8d, r8d
xor edx, edx
call fcn.1401d0b90
test al, al
je 0x1401d1248
mov rcx, qword [rsp + 0x40]
call fcn.1401d18c0
mov ebx, eax
mov rcx, r15
call fcn.1401d18c0
cmp eax, ebx
je 0x1401d0cac
mov dword [rdi], 0x1c
jmp 0x1401d1490
movzx eax, word [rsi]
add rsi, rax
mov r10, qword [rsp + 0x40]
test r14d, r14d
js 0x1401d0cbf
sub r14d, eax
test rsi, rsi
je 0x1401d148a
cmp r14d, 7
jbe 0x1401d148a
mov ebp, dword [rsi]
cmp ebp, 2
jl 0x1401d1248
test r14d, r14d
js 0x1401d0cf2
lea eax, [rbp*4]
cmp r14d, eax
jl 0x1401d1248
cmp ebp, 0x13
jle 0x1401d0cfc
mov eax, dword [rsi + 0x4c]
jmp 0x1401d0d0e
cmp ebp, 5
jle 0x1401d0d0c
lea eax, [rbp - 1]
movsxd rcx, eax
mov eax, dword [rsi + rcx*4]
jmp 0x1401d0d0e
xor eax, eax
test r14d, r14d
js 0x1401d0d1c
cmp r14d, eax
jl 0x1401d1248
test r15, r15
jne 0x1401d0d26
xor r13d, r13d
jmp 0x1401d0d2a
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 0x1401d0d56
mov ecx, dword [rsi + 0x14]
jmp 0x1401d0d59
mov ecx, r12d
cmp ebp, 6
jle 0x1401d0d63
mov eax, dword [rsi + 0x18]
jmp 0x1401d0d66
mov eax, r12d
sub eax, ecx
cmp eax, 4
jl 0x1401d0dd5
test r13, r13
je 0x1401d1248
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 0x1401d0dd5
lea rcx, [r9 - 1]
lea rcx, [rbx + rcx*4]
test dword [rcx], 0xffff0000
je 0x1401d0db7
inc r11d
inc rdx
sub rcx, 4
cmp rdx, r9
jl 0x1401d0da0
mov dword [rsp + 0x58], r11d
test r11d, r11d
je 0x1401d0dd5
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 0x1401d0de8
mov ecx, dword [rsi + 0x18]
jmp 0x1401d0deb
mov ecx, r12d
cmp ebp, 7
jle 0x1401d0df5
mov eax, dword [rsi + 0x1c]
jmp 0x1401d0df8
mov eax, r12d
sub eax, ecx
cmp eax, 0x100
jl 0x1401d0e15
test r9d, r9d
je 0x1401d1248
movsxd rdx, ecx
add rdx, rsi
mov qword [rsp + 0x68], rdx
test r13, r13
je 0x1401d0e2c
mov eax, dword [rsi + 4]
and eax, 0xff000000
cmp dword [r13 + 0x38], eax
jne 0x1401d1248
xor ebx, ebx
cmp ebp, 7
jle 0x1401d0e39
mov r15d, dword [rsi + 0x1c]
jmp 0x1401d0e3c
mov r15d, r12d
cmp ebp, 8
jle 0x1401d0e47
mov r14d, dword [rsi + 0x20]
jmp 0x1401d0e4a
mov r14d, r12d
sub r14d, r15d
cmp r14d, 8
jl 0x1401d0eb5
mov rdx, rdi
mov rcx, r10
call fcn.1401d17d0
test al, al
je 0x1401d1490
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.14015d910
mov r10, qword [rsp + 0x40]
mov qword [r10 + 0x170], rax
mov qword [rbx], rax
cmp dword [rdi], 0
jg 0x1401d1490
jmp 0x1401d0ec2
test r13, r13
je 0x1401d1248
mov qword [r10 + 0x18], r13
cmp ebp, 9
jle 0x1401d0ecc
mov ecx, dword [rsi + 0x24]
jmp 0x1401d0ecf
mov ecx, r12d
cmp ebp, 0xa
jle 0x1401d0ed9
mov eax, dword [rsi + 0x28]
jmp 0x1401d0edc
mov eax, r12d
sub eax, ecx
cmp eax, 8
jl 0x1401d0f02
test rbx, rbx
je 0x1401d1248
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 0x1401d0f0c
mov ecx, dword [rsi + 0x2c]
jmp 0x1401d0f0f
mov ecx, r12d
cmp ebp, 0xc
jle 0x1401d0f19
mov eax, dword [rsi + 0x30]
jmp 0x1401d0f1c
mov eax, r12d
sub eax, ecx
cmp eax, 4
jl 0x1401d0f42
test rbx, rbx
je 0x1401d1248
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 0x1401d0f6f
movsxd rax, dword [rsi + 0x10]
test eax, eax
js 0x1401d0f6f
test rbx, rbx
je 0x1401d1248
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1401d1248
lea rcx, [rcx + rax*4]
mov qword [rbx + 0x28], rcx
jmp 0x1401d0f85
test rbx, rbx
je 0x1401d0f85
test r13, r13
je 0x1401d1248
mov rax, qword [r13 + 0x28]
mov qword [rbx + 0x28], rax
cmp ebp, 0xc
jle 0x1401d0f8f
mov ecx, dword [rsi + 0x30]
jmp 0x1401d0f92
mov ecx, r12d
cmp ebp, 0xd
jle 0x1401d0f9c
mov eax, dword [rsi + 0x34]
jmp 0x1401d0f9f
mov eax, r12d
sub eax, ecx
cmp eax, 4
jl 0x1401d0ff4
cdq
and edx, 3
add eax, edx
sar eax, 2
test rbx, rbx
je 0x1401d1248
cmp eax, 4
jle 0x1401d1248
movsxd rdx, ecx
add rdx, rsi
mov qword [rbx + 0x80], rdx
mov dword [rbx + 0x88], eax
cmp dword [rdx + 0xc], 0x5000500
jne 0x1401d1248
mov eax, dword [rdx + 0x10]
and eax, 0xff000000
cmp eax, 0x45000000
jb 0x1401d1248
cmp ebp, 0xd
jle 0x1401d0ffe
mov ecx, dword [rsi + 0x34]
jmp 0x1401d1001
mov ecx, r12d
cmp ebp, 0xe
jle 0x1401d100b
mov eax, dword [rsi + 0x38]
jmp 0x1401d100e
mov eax, r12d
sub eax, ecx
cmp eax, 2
jl 0x1401d1030
test rbx, rbx
je 0x1401d1248
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 0x1401d103b
mov r15d, dword [rsi + 0x38]
jmp 0x1401d103e
mov r15d, r12d
cmp ebp, 0xf
jle 0x1401d1049
mov r14d, dword [rsi + 0x3c]
jmp 0x1401d104c
mov r14d, r12d
sub r14d, r15d
mov r11d, 0xff00
cmp r14d, 2
jl 0x1401d11d5
test rbx, rbx
je 0x1401d1248
test r13, r13
jne 0x1401d10c6
mov ecx, 0xc8
call fcn.14011e0f0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x1401d109f
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8d, 0x352
lea rdx, [0x1402e8ea0]
mov rcx, rax
call fcn.140165770
nop
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x178], rax
test rax, rax
jne 0x1401d10bb
mov dword [rdi], 7
jmp 0x1401d1490
cmp dword [rdi], 0
jg 0x1401d1490
jmp 0x1401d10e0
mov rcx, qword [r13 + 0x50]
call fcn.140166ba0
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x178], rax
test rax, rax
je 0x1401d10b0
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.14022f5e0
test al, al
je 0x1401d1248
lea rcx, [rsp + 0x88]
call fcn.14022f4e0
mov r15d, eax
xor r14d, r14d
test eax, eax
jle 0x1401d1159
mov rdi, qword [rsp + 0x40]
lea r9, [rsp + 0x5c]
lea r8, [rsp + 0x60]
mov edx, r14d
lea rcx, [rsp + 0x88]
call fcn.14022f500
mov r8d, dword [rsp + 0x5c]
mov edx, dword [rsp + 0x60]
mov rcx, qword [rdi + 0x178]
call fcn.140166780
inc r14d
cmp r14d, r15d
jl 0x1401d1122
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.140167190
test al, al
jne 0x1401d119a
movzx edx, r14w
mov rcx, qword [rdi + 0x178]
call fcn.140166580
inc r14w
add r15d, 0x400
cmp r14w, r12w
jb 0x1401d1170
mov rax, rdi
mov rcx, qword [rax + 0x178]
call fcn.1401676a0
mov r10, rdi
mov rax, qword [rdi + 0x178]
mov rdi, qword [rsp + 0x78]
or r12d, 0xffffffff
mov r11d, 0xff00
jmp 0x1401d11e7
test rbx, rbx
je 0x1401d1267
test r13, r13
je 0x1401d1248
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 0x1401d1267
cmp ebp, 0xf
jle 0x1401d120d
mov ecx, dword [rsi + 0x3c]
jmp 0x1401d1210
mov ecx, r12d
cmp ebp, 0x10
jle 0x1401d121a
mov eax, dword [rsi + 0x40]
jmp 0x1401d121d
mov eax, r12d
sub eax, ecx
cmp eax, 2
jl 0x1401d1253
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 0x1401d1267
mov dword [rdi], 3
jmp 0x1401d1490
test r13, r13
je 0x1401d1267
mov rax, qword [r13 + 0x58]
mov qword [rbx + 0x58], rax
mov eax, dword [r13 + 0x60]
mov dword [rbx + 0x60], eax
cmp ebp, 0x10
jle 0x1401d1271
mov ecx, dword [rsi + 0x40]
jmp 0x1401d1274
mov ecx, r12d
cmp ebp, 0x11
jle 0x1401d127e
mov eax, dword [rsi + 0x44]
jmp 0x1401d1281
mov eax, r12d
sub eax, ecx
mov r9d, 0x300
cmp eax, 2
jl 0x1401d12f7
test rbx, rbx
je 0x1401d1248
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 0x1401d1248
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 0x1401d1248
cmp word [rcx + 2], r9w
jne 0x1401d1248
lea eax, [rdx - 1]
cdqe
cmp word [rcx + rax*2], r11w
je 0x1401d131f
mov dword [rdi], 3
jmp 0x1401d1490
test rbx, rbx
je 0x1401d131f
test r13, r13
je 0x1401d131f
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 0x1401d1329
mov eax, dword [rsi + 0x44]
jmp 0x1401d132c
mov eax, r12d
cmp ebp, 0x12
jle 0x1401d1335
mov r12d, dword [rsi + 0x48]
sub r12d, eax
cmp r12d, 0x100
jl 0x1401d1351
test rbx, rbx
je 0x1401d1248
cdqe
add rax, rsi
jmp 0x1401d1363
test rbx, rbx
je 0x1401d1367
test r13, r13
je 0x1401d1248
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.1401dfe70
mov ebp, eax
mov r15d, dword [rsp + 0x48]
cmp esi, dword [rbx + 0x18]
jne 0x1401d13f7
cmp dword [rbx + 0x1c], 0
je 0x1401d13f7
cmp r15d, dword [rbx + 0x48]
jne 0x1401d13f7
mov r12, qword [rsp + 0x50]
test r15d, r15d
je 0x1401d13c9
lea ecx, [r15*4]
movsxd r8, ecx
mov rdx, qword [rbx + 0x40]
mov rcx, r12
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1401d13fc
cmp ebp, dword [rbx + 0x50]
jne 0x1401d13fc
test ebp, ebp
js 0x1401d1490
lea rdx, [rbx + 0x54]
mov r8d, 0x300
lea rcx, [rsp + 0xb0]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1401d1490
jmp 0x1401d13fc
mov r12, qword [rsp + 0x50]
mov rcx, r14
call fcn.140168d70
mov rbx, rax
test rax, rax
je 0x1401d10b0
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.14016dfc0
mov dword [rbx + 0x1c], eax
test eax, eax
je 0x1401d1248
test r15d, r15d
je 0x1401d146f
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.1401e5430
lea r8, [rbx + 0x54]
mov r9d, 0x180
mov rdx, rbx
mov rcx, qword [rsi + 0x18]
call fcn.1401dfe70
mov dword [rbx + 0x50], eax
jmp 0x1401d1490
mov dword [rdi], 1
mov rcx, qword [rsp + 0x3b0]
xor rcx, rsp
call fcn.14024f8b0
mov rbx, qword [rsp + 0x410]
add rsp, 0x3c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret