Function at 0x1403af010
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, 0x58
movaps xmmword [rsp + 0x40], xmm6
mov r12, r8
mov rsi, rdx
mov r15, rcx
mov r14d, dword [rsp + 0xc0]
cmp r14d, 0x29
jl 0x1403af054
test rsi, rsi
je 0x1403af0a7
cmp r14d, 0x64
ja 0x1403af0a7
mov eax, 0x80000
and eax, dword [rsi + 0x224]
je 0x1403af0a7
mov rbx, qword [rsp + 0xd8]
mov rax, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xc8]
test rbx, rbx
je 0x1403af078
mov qword [rbx], 0
mov rcx, r8
or rcx, rax
sete cl
mov ebp, 1
test r15, r15
je 0x1403af08f
test cl, cl
je 0x1403af0d3
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x40]
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.Maximum_entity_nesting_depth_exceeded
mov ebp, 0x59
mov rcx, rsi
mov edx, 0x59
call fcn.1403aa720
jmp 0x1403af08f
mov rcx, rdi
call fcn.1401bc290
jmp 0x1403af08f
mov ebp, 0x1b
jmp 0x1403af08f
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], 0
mov rcx, r12
mov rdx, r9
mov r9, rax
call fcn.1403b19d0
test rax, rax
je 0x1403af0cc
mov rdi, rax
test rsi, rsi
je 0x1403af118
movzx eax, word [rsi + 0x2d4]
mov word [rdi + 0x2d4], ax
movzx eax, word [rsi + 0x2d6]
mov word [rdi + 0x2d6], ax
mov rcx, rdi
call fcn.14017d0a0
lea rcx, [0x14049e9d9]
call fcn.14017b440
test rax, rax
je 0x1403af0c2
mov r13, rax
mov rdx, rax
mov dword [r13 + 0xac], 0x40
mov rax, qword [r15 + 0x50]
mov qword [r13 + 0x50], rax
mov rax, qword [r15 + 0x58]
mov qword [r13 + 0x58], rax
mov rcx, qword [r15 + 0x98]
test rcx, rcx
mov qword [rsp + 0x30], r13
je 0x1403af174
mov qword [rdx + 0x98], rcx
call fcn.1401b9820
mov rdx, qword [rsp + 0x30]
mov rcx, qword [r15 + 0x88]
test rcx, rcx
je 0x1403af191
call fcn.14017b260
mov rdx, qword [rsp + 0x30]
mov qword [rdx + 0x88], rax
add r13, 0x50
mov qword [rsp + 0x38], r13
lea r8, str.pseudoroot
mov rcx, rdx
xor edx, edx
xor r9d, r9d
call fcn.1403a5040
test rax, rax
jne 0x1403af1da
test r12, r12
je 0x1403af1c0
mov rcx, rdi
call fcn.1401bc290
xorps xmm0, xmm0
mov rax, qword [rsp + 0x38]
movups xmmword [rax], xmm0
mov rcx, qword [rsp + 0x30]
call fcn.14017b560
jmp 0x1403af08f
mov r13, rax
mov r12, qword [rsp + 0x30]
mov rcx, r12
mov rdx, rax
call fcn.1403a5ae0
mov rdx, qword [r12 + 0x18]
mov rcx, rdi
call fcn.1403a7f80
mov qword [rdi + 0x10], r15
mov qword [r13 + 0x40], r15
mov rcx, rdi
call fcn.1401bb850
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 0x20]
cmp byte [rax], 0x3c
jne 0x1403af291
cmp byte [rax + 1], 0x3f
jne 0x1403af291
cmp byte [rax + 2], 0x78
jne 0x1403af291
cmp byte [rax + 3], 0x6d
jne 0x1403af291
cmp byte [rax + 4], 0x6c
jne 0x1403af291
movzx eax, byte [rax + 5]
cmp rax, 0x20
ja 0x1403af291
movabs rcx, 0x100002600
bt rcx, rax
jae 0x1403af291
mov rcx, rdi
call fcn.1403ae360
mov rcx, qword [rsi + 0x20]
lea rdx, [0x14049e9d9]
call fcn.14017b340
test eax, eax
je 0x1403af291
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x50]
lea rdx, [0x14049e9d9]
call fcn.14017b340
test eax, eax
jne 0x1403af291
lea r8, str.Version_mismatch_between_document_and_entity_n
mov rcx, rdi
mov edx, WSASetLastError
call fcn.1403aa720
mov dword [rdi + 0x108], 7
mov dword [rdi + 0x178], r14d
test rsi, rsi
mov r14, qword [rsp + 0x38]
jne 0x1403af2d4
mov qword [rdi + 0x198], 0
xor eax, eax
mov dword [rdi + 0x94], eax
mov dword [rdi + 0x8c], 2
mov dword [rdi + 0x1a0], eax
jmp 0x1403af41d
mov rax, qword [rsi + 0x198]
mov qword [rdi + 0x198], rax
mov eax, dword [rsi + 0x1a0]
mov dword [rdi + 0x1a0], eax
mov eax, dword [rsi + 0x94]
mov dword [rdi + 0x94], eax
mov eax, dword [rsi + 0x90]
mov dword [rdi + 0x90], eax
mov eax, dword [rsi + 0x1c]
mov dword [rdi + 0x1c], eax
cmp dword [rsi + 0x94], 0
je 0x1403af34b
mov rax, qword [rsi + 0xa0]
mov qword [rdi + 0xa0], rax
mov rax, qword [rsi + 0xa8]
mov qword [rdi + 0xa8], rax
mov rax, qword [rsi + 0x98]
mov qword [rdi + 0x98], rax
mov eax, dword [rsi + 0xc8]
mov dword [rdi + 0xc8], eax
mov eax, dword [rsi + 0x8c]
mov dword [rdi + 0x8c], eax
mov rcx, qword [rdi + 0x1b8]
test rcx, rcx
je 0x1403af368
call fcn.1401b9860
mov rcx, qword [rsi + 0x1b8]
mov qword [rdi + 0x1b8], rcx
lea rdx, [0x1404e4ac9]
mov r8d, 3
call fcn.1401b9970
mov qword [rdi + 0x1d0], rax
mov rcx, qword [rdi + 0x1b8]
lea rdx, str.xmlns
mov r8d, 5
call fcn.1401b9970
mov qword [rdi + 0x1d8], rax
mov rcx, qword [rdi + 0x1b8]
lea rdx, str.http:__www.w3.org_XML_1998_namespace
mov r8d, 0x24
call fcn.1401b9970
mov qword [rdi + 0x1e0], rax
mov eax, dword [rsi + 0x228]
mov dword [rdi + 0x228], eax
mov rax, qword [rsi + 0x210]
mov qword [rdi + 0x210], rax
mov rax, qword [rsi + 0x218]
mov qword [rdi + 0x218], rax
mov eax, dword [rsi + 0x1a4]
mov dword [rdi + 0x1a4], eax
mov eax, dword [rsi + 0x68]
mov dword [rdi + 0x68], eax
mov eax, dword [rsi + 0x70]
mov dword [rdi + 0x70], eax
mov eax, dword [rsi + 0x74]
mov dword [rdi + 0x74], eax
mov rax, qword [rsi + 0x78]
mov qword [rdi + 0x78], rax
mov rcx, rdi
call fcn.1403b04a0
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 0x20]
movzx ecx, byte [rax]
test ecx, ecx
je 0x1403af454
cmp ecx, 0x3c
jne 0x1403af444
mov edx, 0x55
cmp byte [rax + 1], 0x2f
je 0x1403af449
mov edx, 0x56
mov rcx, rdi
xor r8d, r8d
call fcn.1403f5fb0
mov rax, qword [rdi + 0x50]
mov rcx, qword [rsp + 0x30]
cmp rax, qword [rcx + 0x18]
je 0x1403af478
mov rcx, rdi
mov edx, 0x55
xor r8d, r8d
call fcn.1403f5fb0
mov rcx, qword [rsp + 0x30]
cmp dword [rdi + 0x18], 0
je 0x1403af490
test rbx, rbx
je 0x1403af4fb
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x18]
mov qword [rbx], rax
jmp 0x1403af4ea
mov ebp, dword [rdi + 0x80]
test rsi, rsi
je 0x1403af5b7
mov dword [rsi + 0x80], ebp
mov dword [rsi + 0x18], 0
mov eax, 0x248
lea rdx, [rsi + rax]
mov rcx, rdi
add rcx, rax
call fcn.1403b3450
mov rax, qword [rdi + 0x38]
test rax, rax
jne 0x1403af50b
jmp 0x1403af55a
xor ebp, ebp
test rsi, rsi
jne 0x1403af55a
jmp 0x1403af5b7
mov qword [rax + 0x28], 0
mov rax, qword [rax + 0x30]
test rax, rax
jne 0x1403af4de
mov rax, qword [rcx + 0x18]
mov qword [rax + 0x18], 0
test rsi, rsi
je 0x1403af4ce
xor ebp, ebp
mov rax, qword [rdi + 0x38]
test rax, rax
je 0x1403af4ce
mov ecx, dword [rax + 0x20]
sub ecx, dword [rax + 0x18]
add ecx, dword [rax + 0x3c]
mov eax, 0xffffffff
cmovb ecx, eax
mov edx, dword [rsi + reloc.SHELL32.dll_IsUserAnAdmin]
add edx, ecx
cmovb edx, eax
mov dword [rsi + reloc.SHELL32.dll_IsUserAnAdmin], edx
add edx, dword [rdi + reloc.SHELL32.dll_IsUserAnAdmin]
cmovb edx, eax
mov dword [rsi + reloc.SHELL32.dll_IsUserAnAdmin], edx
add ecx, dword [rsi + 0x2cc]
cmovb ecx, eax
mov dword [rsi + 0x2cc], ecx
add ecx, dword [rdi + 0x2cc]
cmovb ecx, eax
mov dword [rsi + 0x2cc], ecx
mov qword [rdi + 0x1b8], 0
xorps xmm0, xmm0
movups xmmword [rdi + 0x210], xmm0
movzx eax, word [rdi + 0x2d4]
mov word [rsi + 0x2d4], ax
movzx eax, word [rdi + 0x2d6]
mov word [rsi + 0x2d6], ax
mov eax, dword [rdi + 0x94]
mov dword [rsi + 0x94], eax
mov eax, dword [rdi + 0x90]
mov dword [rsi + 0x90], eax
mov eax, dword [rdi + 0x70]
mov dword [rsi + 0x70], eax
mov eax, dword [rdi + 0x74]
mov dword [rsi + 0x74], eax
mov rax, qword [rdi + 0x78]
mov qword [rsi + 0x78], rax
xorps xmm6, xmm6
movups xmmword [rdi + 0x70], xmm6
mov rcx, rdi
call fcn.1401bc290
movups xmmword [r14], xmm6
jmp 0x1403af1cb