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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x138
mov rax, qword [rsp + 0x158]
mov ecx, dword [rax]
call fcn.1400dd350
movsx eax, al
test eax, eax
je 0x1401e9508
xor eax, eax
jmp 0x1401ea028
mov rax, qword [rsp + 0x150]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x34]
and eax, 0xc
test eax, eax
jne 0x1401e952c
mov dword [rsp + 0x64], 0
jmp 0x1401e953d
mov rax, qword [rsp + 0x150]
mov eax, dword [rax + 0x14]
inc eax
mov dword [rsp + 0x64], eax
mov byte [rsp + 0x20], 0
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x140]
call fcn.14019cc80
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xd8]
sar rax, 0x20
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x64]
cmp dword [rsp + 0x24], eax
jae 0x1401e9619
cmp dword [rsp + 0x24], 0x2000000
jbe 0x1401e9619
mov byte [rsp + 0x20], 1
movabs rax, 0xffffffff00000000
mov rcx, qword [rsp + 0xd8]
and rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x140]
call fcn.1401ea100
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x140]
call fcn.14019cc80
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xd8]
sar rax, 0x20
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x1401e95fd
xor edx, edx
mov rcx, qword [rsp + 0x140]
call fcn.1401ea100
jmp 0x1401e95ff
jmp 0x1401e9601
jmp 0x1401e95b8
mov eax, dword [rsp + 0x64]
cmp dword [rsp + 0x24], eax
jae 0x1401e9619
cmp dword [rsp + 0x24], 0x2000000
ja 0x1401e9590
cmp dword [rsp + 0x24], 0
je 0x1401e9542
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x148]
call fcn.14019cc80
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
sar rax, 0x20
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x64]
cmp dword [rsp + 0x30], eax
jae 0x1401e96fb
cmp dword [rsp + 0x30], 0x2000000
jbe 0x1401e96fb
mov byte [rsp + 0x20], 1
movabs rax, 0xffffffff00000000
mov rcx, qword [rsp + 0xd0]
and rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x148]
call fcn.1401ea100
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x148]
call fcn.14019cc80
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
sar rax, 0x20
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
jne 0x1401e96df
xor edx, edx
mov rcx, qword [rsp + 0x148]
call fcn.1401ea100
jmp 0x1401e96e1
jmp 0x1401e96e3
jmp 0x1401e969a
mov eax, dword [rsp + 0x64]
cmp dword [rsp + 0x30], eax
jae 0x1401e96fb
cmp dword [rsp + 0x30], 0x2000000
ja 0x1401e9672
cmp dword [rsp + 0x30], 0
je 0x1401e9624
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x24], eax
je 0x1401e9787
mov rax, qword [rsp + 0x150]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x100], rax
cmp qword [rsp + 0x100], 0
je 0x1401e9759
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0x100]
call fcn.1401ea0d0
mov dword [rsp + 0x24], eax
mov edx, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x100]
call fcn.1401ea0d0
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x24], eax
jae 0x1401e9770
mov dword [rsp + 0xc8], 0xffffffff
jmp 0x1401e977b
mov dword [rsp + 0xc8], 1
mov eax, dword [rsp + 0xc8]
jmp 0x1401ea028
cmp dword [rsp + 0x24], 1
jne 0x1401e9790
jmp 0x1401e9795
jmp 0x1401e9542
mov rax, qword [rsp + 0x158]
mov ecx, dword [rax]
call fcn.1400dd350
movsx eax, al
test eax, eax
je 0x1401e97b2
xor eax, eax
jmp 0x1401ea028
mov ecx, dword [rsp + 0x34]
call fcn.14019b870
cmp eax, 1
jl 0x1401e9a7e
mov eax, dword [rsp + 0x34]
and eax, 0x800
test eax, eax
jne 0x1401e98c5
mov dword [rsp + 0x94], 0
mov dword [rsp + 0x90], 0
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0xe0], eax
mov edx, dword [rsp + 0xe0]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
shr eax, 0x10
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x6c], 0
je 0x1401e97eb
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0xe8], eax
mov edx, dword [rsp + 0xe8]
mov rcx, qword [rsp + 0x148]
call fcn.1401ea030
shr eax, 0x10
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0x90]
inc eax
mov dword [rsp + 0x90], eax
cmp dword [rsp + 0x88], 0
je 0x1401e982b
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x6c], eax
je 0x1401e98af
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x6c], eax
jae 0x1401e9898
mov dword [rsp + 0xa0], 0xffffffff
jmp 0x1401e98a3
mov dword [rsp + 0xa0], 1
mov eax, dword [rsp + 0xa0]
jmp 0x1401ea028
cmp dword [rsp + 0x6c], 0x100
jne 0x1401e98bb
jmp 0x1401e98c0
jmp 0x1401e97eb
jmp 0x1401e9a7e
mov dword [rsp + 0x80], 0
mov dword [rsp + 0x84], 0
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x50], eax
mov edx, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
mov dword [rsp + 0xa8], eax
cmp dword [rsp + 0xa8], 0x2000200
ja 0x1401e9915
cmp dword [rsp + 0xa8], 0
jne 0x1401e9921
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
jmp 0x1401e98e6
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0x60], eax
mov edx, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x148]
call fcn.1401ea030
mov dword [rsp + 0x98], eax
cmp dword [rsp + 0x98], 0x2000200
ja 0x1401e995b
cmp dword [rsp + 0x98], 0
jne 0x1401e9967
mov eax, dword [rsp + 0x60]
inc eax
mov dword [rsp + 0x60], eax
jmp 0x1401e992c
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x5c], 0
cmp dword [rsp + 0x5c], 0
jne 0x1401e99b7
mov eax, dword [rsp + 0x80]
cmp dword [rsp + 0x74], eax
jle 0x1401e99b7
mov eax, dword [rsp + 0x74]
dec eax
mov dword [rsp + 0x74], eax
mov edx, dword [rsp + 0x74]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
shr eax, 0x10
mov dword [rsp + 0x5c], eax
jmp 0x1401e997f
mov dword [rsp + 0x78], 0
cmp dword [rsp + 0x78], 0
jne 0x1401e99f7
mov eax, dword [rsp + 0x84]
cmp dword [rsp + 0x70], eax
jle 0x1401e99f7
mov eax, dword [rsp + 0x70]
dec eax
mov dword [rsp + 0x70], eax
mov edx, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x148]
call fcn.1401ea030
shr eax, 0x10
mov dword [rsp + 0x78], eax
jmp 0x1401e99bf
mov eax, dword [rsp + 0x78]
cmp dword [rsp + 0x5c], eax
je 0x1401e9a2f
mov eax, dword [rsp + 0x78]
cmp dword [rsp + 0x5c], eax
jge 0x1401e9a18
mov dword [rsp + 0xac], 0xffffffff
jmp 0x1401e9a23
mov dword [rsp + 0xac], 1
mov eax, dword [rsp + 0xac]
jmp 0x1401ea028
cmp dword [rsp + 0x5c], 0
jne 0x1401e9a38
jmp 0x1401e9a3d
jmp 0x1401e9977
mov edx, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
movabs rcx, 0x101000100
cmp rax, rcx
jne 0x1401e9a5f
jmp 0x1401e9a7e
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x60]
inc eax
mov dword [rsp + 0x84], eax
jmp 0x1401e98db
mov eax, dword [rsp + 0x34]
and eax, 0x400
test eax, eax
je 0x1401e9cad
mov ecx, dword [rsp + 0x34]
call fcn.14019b870
mov dword [rsp + 0xf0], eax
mov dword [rsp + 0x54], 0
mov dword [rsp + 0x58], 0
cmp dword [rsp + 0xf0], 0
jne 0x1401e9b8d
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0xf8], eax
mov edx, dword [rsp + 0xf8]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
mov qword [rsp + 0xb8], rax
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0xb8]
sar rax, 0x20
test eax, eax
je 0x1401e9abd
cmp dword [rsp + 0x28], 0
je 0x1401e9abd
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x9c], eax
mov eax, dword [rsp + 0x28]
and eax, 0xc000
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x118], eax
mov edx, dword [rsp + 0x118]
mov rcx, qword [rsp + 0x148]
call fcn.1401ea030
mov qword [rsp + 0xb8], rax
mov eax, dword [rsp + 0x58]
inc eax
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0xb8]
sar rax, 0x20
test eax, eax
je 0x1401e9b28
cmp dword [rsp + 0x3c], 0
je 0x1401e9b28
mov eax, dword [rsp + 0x3c]
and eax, 0xc000
mov dword [rsp + 0x3c], eax
jmp 0x1401e9c20
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0xec], eax
mov edx, dword [rsp + 0xec]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0x28], 0xffff
jbe 0x1401e9b8d
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x9c], eax
mov eax, dword [rsp + 0x28]
and eax, 0xc000
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x108], eax
mov edx, dword [rsp + 0x108]
mov rcx, qword [rsp + 0x148]
call fcn.1401ea030
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x58]
inc eax
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x3c], 0xffff
jbe 0x1401e9bdc
mov eax, dword [rsp + 0x3c]
and eax, 0xc000
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x3c]
cmp dword [rsp + 0x28], eax
je 0x1401e9c95
mov eax, dword [rsp + 0x34]
and eax, 0x100
test eax, eax
jne 0x1401e9c67
mov eax, dword [rsp + 0x3c]
cmp dword [rsp + 0x28], eax
jae 0x1401e9c4e
mov dword [rsp + 0xb0], 0xffffffff
jmp 0x1401e9c59
mov dword [rsp + 0xb0], 1
mov eax, dword [rsp + 0xb0]
jmp 0x1401ea028
mov eax, dword [rsp + 0x3c]
cmp dword [rsp + 0x28], eax
jae 0x1401e9c7e
mov dword [rsp + 0xc4], 1
jmp 0x1401e9c89
mov dword [rsp + 0xc4], 0xffffffff
mov eax, dword [rsp + 0xc4]
jmp 0x1401ea028
mov eax, dword [rsp + 0x9c]
shr eax, 0x10
cmp eax, 0x100
jne 0x1401e9ca8
jmp 0x1401e9cad
jmp 0x1401e9aaf
mov ecx, dword [rsp + 0x34]
call fcn.14019b870
cmp eax, 1
jg 0x1401e9cc2
xor eax, eax
jmp 0x1401ea028
mov ecx, dword [rsp + 0x34]
call fcn.1401ea060
mov dword [rsp + 0xa4], eax
mov dword [rsp + 0x4c], 0
mov dword [rsp + 0x48], 0
mov dword [rsp + 0x68], 0
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0xf4], eax
mov edx, dword [rsp + 0xf4]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
mov dword [rsp + 0x8c], eax
mov eax, dword [rsp + 0x4c]
inc eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0x68]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0xa4]
mov ecx, dword [rsp + 0x8c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
je 0x1401e9cea
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x11c], eax
mov edx, dword [rsp + 0x11c]
mov rcx, qword [rsp + 0x148]
call fcn.1401ea030
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rsp + 0x68]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0xa4]
mov ecx, dword [rsp + 0x7c]
and ecx, eax
mov eax, ecx
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
je 0x1401e9d4a
mov eax, dword [rsp + 0x44]
cmp dword [rsp + 0x40], eax
je 0x1401e9e50
mov ecx, dword [rsp + 0x34]
call fcn.1401ea140
movsx eax, al
test eax, eax
je 0x1401e9e22
cmp dword [rsp + 0x40], 0x200
jbe 0x1401e9df2
cmp dword [rsp + 0x8c], 0xffff
jbe 0x1401e9de5
mov eax, dword [rsp + 0x40]
xor eax, 0xc000
mov dword [rsp + 0x40], eax
jmp 0x1401e9df2
mov eax, dword [rsp + 0x40]
add eax, 0x4000
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x44], 0x200
jbe 0x1401e9e22
cmp dword [rsp + 0x7c], 0xffff
jbe 0x1401e9e15
mov eax, dword [rsp + 0x44]
xor eax, 0xc000
mov dword [rsp + 0x44], eax
jmp 0x1401e9e22
mov eax, dword [rsp + 0x44]
add eax, 0x4000
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x44]
cmp dword [rsp + 0x40], eax
jae 0x1401e9e39
mov dword [rsp + 0xb4], 0xffffffff
jmp 0x1401e9e44
mov dword [rsp + 0xb4], 1
mov eax, dword [rsp + 0xb4]
jmp 0x1401ea028
cmp dword [rsp + 0x40], 0x100
jne 0x1401e9e5c
jmp 0x1401e9e61
jmp 0x1401e9cea
mov ecx, dword [rsp + 0x34]
call fcn.14019b870
cmp eax, 2
jg 0x1401e9e76
xor eax, eax
jmp 0x1401ea028
movsx eax, byte [rsp + 0x20]
test eax, eax
jne 0x1401e9e93
mov eax, dword [rsp + 0x68]
and eax, 0xc0
test eax, eax
jne 0x1401e9e93
xor eax, eax
jmp 0x1401ea028
mov dword [rsp + 0x4c], 0
mov dword [rsp + 0x48], 0
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0xfc], eax
mov edx, dword [rsp + 0xfc]
mov rcx, qword [rsp + 0x140]
call fcn.1401ea030
mov qword [rsp + 0x120], rax
mov eax, dword [rsp + 0x4c]
inc eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x120]
and eax, 0xffff
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0
jne 0x1401e9efd
mov rax, qword [rsp + 0x120]
sar rax, 0x20
mov dword [rsp + 0x2c], eax
jmp 0x1401e9f16
cmp dword [rsp + 0x2c], 0x200
ja 0x1401e9f09
jmp 0x1401e9f16
mov eax, dword [rsp + 0x2c]
or eax, 0xffffff3f
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0
je 0x1401e9ea3
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0xe4], eax
mov edx, dword [rsp + 0xe4]
mov rcx, qword [rsp + 0x148]
call fcn.1401ea030
mov qword [rsp + 0x128], rax
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x128]
and eax, 0xffff
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
jne 0x1401e9f77
mov rax, qword [rsp + 0x128]
sar rax, 0x20
mov dword [rsp + 0x38], eax
jmp 0x1401e9f90
cmp dword [rsp + 0x38], 0x200
ja 0x1401e9f83
jmp 0x1401e9f90
mov eax, dword [rsp + 0x38]
or eax, 0xffffff3f
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
je 0x1401e9f1d
mov eax, dword [rsp + 0x38]
cmp dword [rsp + 0x2c], eax
je 0x1401ea015
mov rax, qword [rsp + 0x150]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x110], rax
cmp qword [rsp + 0x110], 0
je 0x1401e9fea
mov edx, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x110]
call fcn.1401ea0d0
mov dword [rsp + 0x2c], eax
mov edx, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x110]
call fcn.1401ea0d0
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x38]
cmp dword [rsp + 0x2c], eax
jae 0x1401ea001
mov dword [rsp + 0xc0], 0xffffffff
jmp 0x1401ea00c
mov dword [rsp + 0xc0], 1
mov eax, dword [rsp + 0xc0]
jmp 0x1401ea028
cmp dword [rsp + 0x2c], 0x100
jne 0x1401ea021
jmp 0x1401ea026
jmp 0x1401e9ea3
xor eax, eax
add rsp, 0x138
ret