Function at 0x1400d0940
Capabilities:
Parse pe header

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x30
mov rdi, rcx
mov rax, qword [0x1401ee6a8]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
mov rax, qword [rcx + 0x38]
mov rcx, qword [rax + 0x20]
mov esi, 0xffffffff
cmp byte [rcx], 0x3c
jne 0x1400d0c14
cmp byte [rcx + 1], 0x21
jne 0x1400d0c14
cmp byte [rcx + 2], 0x45
jne 0x1400d0c14
cmp byte [rcx + 3], 0x4c
jne 0x1400d0c14
cmp byte [rcx + 4], 0x45
jne 0x1400d0c14
cmp byte [rcx + 5], 0x4d
jne 0x1400d0c14
cmp byte [rcx + 6], 0x45
jne 0x1400d0c14
cmp byte [rcx + 7], 0x4e
jne 0x1400d0c14
cmp byte [rcx + 8], 0x54
jne 0x1400d0c14
mov ebp, dword [rax + 0x5c]
mov ecx, 9
add dword [rdi + 0x130], ecx
add qword [rax + 0x20], 9
mov rax, qword [rdi + 0x38]
add dword [rax + 0x38], ecx
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx + 0x20]
cmp byte [rax], 0
jne 0x1400d09fc
mov edx, 0xfa
call fcn.1400e04bd
mov rcx, rdi
call fcn.1400c7b92
test eax, eax
je 0x1400d0b14
mov rcx, rdi
call fcn.1400c9ff0
test rax, rax
je 0x1400d0b28
mov rbx, rax
mov rcx, rdi
call fcn.1400c7b92
test eax, eax
jne 0x1400d0a40
lea r8, str.Space_required_after_the_element_name_n
mov rcx, rdi
mov edx, 0x41
call fcn.1400c9907
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x20]
mov dl, byte [rcx]
cmp dl, 0x40
jg 0x1400d0b3c
cmp dl, 0x25
je 0x1400d0b98
cmp dl, 0x28
jne 0x1400d0c00
lea r8, [rsp + 0x20]
mov rcx, rdi
mov rdx, rbx
call fcn.1400d0841
mov esi, eax
mov rcx, rdi
call fcn.1400c7b92
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x20]
cmp byte [rcx], 0x3e
jne 0x1400d0c2e
cmp ebp, dword [rax + 0x5c]
je 0x1400d0aa9
lea r8, str.Element_declaration_doesnt_start_and_stop_in_the_same_entity_n
mov rcx, rdi
mov edx, 0x5a
call fcn.1400c9907
mov rcx, rdi
call fcn.1400e0656
mov rax, qword [rdi]
test rax, rax
je 0x1400d0c3e
cmp dword [rdi + 0x13c], 0
jne 0x1400d0c3e
mov rax, qword [rax + 0x48]
test rax, rax
je 0x1400d0c3e
mov r14, qword [rsp + 0x20]
test r14, r14
je 0x1400d0c53
xor ebp, ebp
mov qword [r14 + 0x20], rbp
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov rdx, rbx
mov r8d, esi
mov r9, r14
call qword [rax + 0x48]
cmp qword [r14 + 0x20], rbp
jne 0x1400d0c14
mov rcx, qword [rdi + 0x10]
mov rdx, r14
jmp 0x1400d0c4c
lea r8, str.Space_required_after_ELEMENT_n
mov rcx, rdi
mov edx, 0x41
jmp 0x1400d0c0f
lea r8, str.xmlParseElementDecl:_no_name_for_Element_n
mov rcx, rdi
mov edx, 0x44
jmp 0x1400d0c0f
cmp dl, 0x41
je 0x1400d0bb8
cmp dl, 0x45
jne 0x1400d0c00
cmp byte [rcx + 1], 0x4d
jne 0x1400d0c00
cmp byte [rcx + 2], 0x50
jne 0x1400d0c00
cmp byte [rcx + 3], 0x54
jne 0x1400d0c00
cmp byte [rcx + 4], 0x59
jne 0x1400d0c00
mov ecx, 5
add dword [rdi + 0x130], ecx
add qword [rax + 0x20], 5
mov rax, qword [rdi + 0x38]
add dword [rax + 0x38], ecx
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx + 0x20]
mov esi, 1
jmp 0x1400d0be8
cmp dword [rdi + 0x8c], 0
jne 0x1400d0c00
cmp dword [rdi + 0x40], 1
jne 0x1400d0c00
lea r8, str.PEReference:_forbidden_within_markup_decl_in_internal_subset_n
mov rcx, rdi
mov edx, 0x15
jmp 0x1400d0c0f
cmp byte [rcx + 1], 0x4e
jne 0x1400d0c00
cmp byte [rcx + 2], 0x59
jne 0x1400d0c00
mov ecx, 3
add dword [rdi + 0x130], ecx
add qword [rax + 0x20], 3
mov rax, qword [rdi + 0x38]
add dword [rax + 0x38], ecx
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx + 0x20]
mov esi, 2
cmp byte [rax], 0
jne 0x1400d0a77
mov edx, 0xfa
call fcn.1400e04bd
jmp 0x1400d0a77
lea r8, str.xmlParseElementDecl:_EMPTY__ANY_or___expected_n
mov rcx, rdi
mov edx, 0x36
call fcn.1400c9907
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.140163e00
mov eax, esi
add rsp, 0x30
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
mov rcx, rdi
mov edx, 0x49
xor r8d, r8d
call fcn.1400c80bc
mov rdx, qword [rsp + 0x20]
test rdx, rdx
je 0x1400d0c14
mov rcx, qword [rdi + 0x10]
call fcn.1400e3921
jmp 0x1400d0c14
mov rcx, qword [rdi + 8]
mov rdx, rbx
mov r8d, esi
xor r9d, r9d
call rax
jmp 0x1400d0c14