Function at 0x140005797
Capabilities:
Parse pe header

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rax, qword [rcx + 0x18]
mov dl, byte [rax]
mov rbx, rcx
cmp dl, 0x4c
jne 0x1400057ba
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
jmp fcn.140003d4f
cmp dl, 0x54
jne 0x1400057cc
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
jmp fcn.140001680
cmp dl, 0x73
jne 0x14000587c
mov cl, byte [rax + 1]
cmp cl, 0x72
jne 0x140005853
lea rdx, [rax + 2]
cmp dword [rbx + 0x54], 0
mov qword [rbx + 0x18], rdx
je 0x140005835
mov al, byte [rax + 2]
cmp al, 0x39
jg 0x1400057f8
cmp al, 0x2f
jle 0x140005835
jmp 0x14000580f
sub eax, 0x43
cmp al, 0x37
ja 0x140005835
movabs rdx, 0xffffffc0040201
bt rdx, rax
jae 0x140005835
mov dword [rbx + 0x54], 0xffffffff
xor edx, edx
mov rcx, rbx
call fcn.140005682
mov rdx, rax
mov rax, qword [rbx + 0x18]
cmp byte [rax], 0x45
jne 0x140005840
inc rax
mov qword [rbx + 0x18], rax
jmp 0x140005840
mov rcx, rbx
call fcn.140004796
mov rdx, rax
xor r8d, r8d
mov rcx, rbx
call fcn.140005235
mov r8, rax
jmp 0x140005913
cmp cl, 0x70
jne 0x14000593f
add rax, 2
mov rcx, rbx
mov qword [rbx + 0x18], rax
call fcn.140005797
xor r9d, r9d
mov edx, 0x4d
mov r8, rax
jmp 0x140005d52
cmp dl, 0x66
jne 0x1400058e3
cmp byte [rax + 1], 0x70
jne 0x14000593f
lea rdx, [rax + 2]
mov qword [rcx + 0x18], rdx
cmp byte [rax + 2], 0x54
jne 0x1400058a6
add rax, 3
xor r9d, r9d
mov qword [rcx + 0x18], rax
jmp 0x1400058c0
call fcn.140001642
lea r9d, [rax + 1]
not eax
test eax, 0x7fffffff
jne 0x1400058c0
xor r8d, r8d
jmp 0x140005d88
mov rcx, rbx
call fcn.14000137f
mov r8, rax
test rax, rax
je 0x140005d88
mov dword [rax], 6
mov dword [rax + 0x10], r9d
jmp 0x140005d88
lea ecx, [rdx - 0x30]
cmp cl, 9
jbe 0x1400058fe
cmp dl, 0x6f
jne 0x14000593f
cmp byte [rax + 1], 0x6e
jne 0x14000593f
add rax, 2
mov qword [rbx + 0x18], rax
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140005235
mov r8, rax
test rax, rax
je 0x1400058b8
mov rax, qword [rbx + 0x18]
cmp byte [rax], 0x49
jne 0x140005d88
mov rcx, rbx
mov qword [rsp + 0x28], r8
call fcn.140006050
mov r8, qword [rsp + 0x28]
mov edx, 4
mov r9, rax
jmp 0x140005d52
cmp dl, 0x69
je 0x140005949
cmp dl, 0x74
jne 0x1400059a9
cmp byte [rax + 1], 0x6c
jne 0x1400059dc
add rax, 2
xor r8d, r8d
mov qword [rbx + 0x18], rax
cmp dl, 0x74
jne 0x14000596e
mov rcx, rbx
call fcn.140004796
mov r8, rax
mov rax, qword [rbx + 0x18]
mov qword [rsp + 0x28], r8
cmp byte [rax], 0
je 0x1400058b8
cmp byte [rax + 1], 0
je 0x1400058b8
mov edx, 0x45
mov rcx, rbx
call fcn.14000606d
mov r8, qword [rsp + 0x28]
mov edx, 0x32
mov r9, rax
jmp 0x140005d52
cmp dl, 0x75
jne 0x1400059dc
inc rax
mov rcx, rbx
mov qword [rbx + 0x18], rax
call fcn.140001971
mov rcx, rbx
mov qword [rsp + 0x28], rax
call fcn.140005fa3
mov r8, qword [rsp + 0x28]
mov edx, 0x40
mov r9, rax
jmp 0x140005d52
mov rcx, rbx
call fcn.1400050f5
mov rdi, rax
test rax, rax
je 0x1400058b8
mov eax, dword [rax]
cmp eax, 0x33
jne 0x140005a35
mov rbp, qword [rdi + 0x10]
lea rdx, [0x1400207e1]
mov eax, dword [rbp + 0x10]
mov rsi, qword [rbp]
sub eax, 2
add dword [rbx + 0x48], eax
mov rcx, rsi
call fcn.14000b3d8
test eax, eax
jne 0x140005a28
mov rcx, rbx
call fcn.140004796
jmp 0x140005af8
mov ebp, dword [rbp + 0x14]
cmp ebp, 2
jne 0x140005a52
jmp 0x140005b08
cmp eax, 0x34
je 0x140005a44
cmp eax, 0x35
je 0x140005a83
jmp 0x1400058b8
mov ebp, dword [rdi + 0x10]
cmp ebp, 2
je 0x1400058b8
xor esi, esi
cmp ebp, 2
jg 0x140005a65
test ebp, ebp
je 0x140005a73
cmp ebp, 1
je 0x140005aa2
jmp 0x1400058b8
cmp ebp, 3
je 0x140005c2d
jmp 0x1400058b8
xor r9d, r9d
mov r8, rdi
mov edx, 0x37
jmp 0x140005d52
mov rax, qword [rbx + 0x18]
cmp byte [rax], 0x5f
jne 0x140005ad7
inc rax
mov edx, 0x45
mov rcx, rbx
mov qword [rbx + 0x18], rax
call fcn.14000606d
jmp 0x140005af8
test rsi, rsi
je 0x140005ad7
mov al, byte [rsi]
cmp al, 0x70
je 0x140005ab5
cmp al, 0x6d
jne 0x140005d62
cmp al, byte [rsi + 1]
jne 0x140005d62
mov rax, qword [rbx + 0x18]
cmp byte [rax], 0x5f
jne 0x140005d64
inc rax
mov qword [rbx + 0x18], rax
jmp 0x140005d62
xor ebp, ebp
mov rcx, rbx
call fcn.140005797
test ebp, ebp
je 0x140005af8
mov r9, rax
mov r8, rax
mov edx, 0x3a
mov rcx, rbx
call fcn.1400013a1
mov r9, rax
mov r8, rdi
mov edx, 0x38
jmp 0x140005d52
mov rcx, qword [rdi + 0x10]
call fcn.140001d69
test eax, eax
je 0x140005b1f
mov rcx, rbx
call fcn.140004796
jmp 0x140005b58
cmp byte [rsi], 0x66
jne 0x140005b2e
mov rcx, rbx
call fcn.1400050f5
jmp 0x140005b58
lea rdx, [0x140020d58]
mov rcx, rsi
call fcn.14000b3d8
test eax, eax
jne 0x140005b50
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140005235
jmp 0x140005b58
mov rcx, rbx
call fcn.140005797
lea rdx, [0x1400207ea]
mov rcx, rsi
mov rbp, rax
call fcn.14000b3d8
test eax, eax
jne 0x140005b80
mov edx, 0x45
mov rcx, rbx
call fcn.14000606d
jmp 0x140005c07
lea rdx, [0x140020d5b]
mov rcx, rsi
call fcn.14000b3d8
test eax, eax
je 0x140005ba6
lea rdx, [0x140020d5e]
mov rcx, rsi
call fcn.14000b3d8
test eax, eax
jne 0x140005bc2
mov rax, qword [rbx + 0x18]
mov dl, byte [rax]
cmp dl, 0x67
jne 0x140005bb7
cmp byte [rax + 1], 0x73
jmp 0x140005bc0
cmp dl, 0x73
jne 0x140005bcc
cmp byte [rax + 1], 0x72
jne 0x140005bcc
mov rcx, rbx
call fcn.140005797
jmp 0x140005c07
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140005235
mov r8, rax
mov rax, qword [rbx + 0x18]
cmp byte [rax], 0x49
jne 0x140005c0a
mov rcx, rbx
mov qword [rsp + 0x28], r8
call fcn.140006050
mov r8, qword [rsp + 0x28]
mov edx, 4
mov rcx, rbx
mov r9, rax
call fcn.1400013a1
mov r8, rax
mov r9, r8
mov edx, 0x3a
mov r8, rbp
mov rcx, rbx
call fcn.1400013a1
mov r8, rdi
mov edx, 0x39
mov r9, rax
jmp 0x140005d52
test rsi, rsi
je 0x1400058b8
lea rdx, [0x1400207f0]
mov rcx, rsi
call fcn.14000b3d8
test eax, eax
je 0x140005c5c
lea rdx, [0x140020d61]
mov rcx, rsi
call fcn.14000b3d8
test eax, eax
jne 0x140005c66
mov rcx, rbx
call fcn.140005797
jmp 0x140005c74
mov al, byte [rsi]
cmp al, 0x66
jne 0x140005c98
mov rcx, rbx
call fcn.1400050f5
mov rcx, rbx
mov rsi, rax
call fcn.140005797
mov rcx, rbx
mov rbp, rax
call fcn.140005797
test rax, rax
jne 0x140005d21
jmp 0x1400058b8
cmp al, 0x6e
jne 0x1400058b8
mov al, byte [rsi + 1]
cmp al, 0x77
je 0x140005caf
cmp al, 0x61
jne 0x1400058b8
mov edx, 0x5f
mov rcx, rbx
call fcn.14000606d
mov rcx, rbx
mov rsi, rax
call fcn.140004796
mov rbp, rax
mov rax, qword [rbx + 0x18]
mov dl, byte [rax]
cmp dl, 0x45
jne 0x140005ce0
inc rax
mov qword [rbx + 0x18], rax
xor eax, eax
jmp 0x140005d21
cmp dl, 0x70
jne 0x140005d06
cmp byte [rax + 1], 0x69
jne 0x1400058b8
add rax, 2
mov edx, 0x45
mov rcx, rbx
mov qword [rbx + 0x18], rax
call fcn.14000606d
jmp 0x140005d21
cmp dl, 0x69
jne 0x1400058b8
cmp byte [rax + 1], 0x6c
jne 0x1400058b8
mov rcx, rbx
call fcn.140005797
mov r9, rax
mov r8, rbp
mov edx, 0x3d
mov rcx, rbx
call fcn.1400013a1
mov r8, rsi
mov edx, 0x3c
mov rcx, rbx
mov r9, rax
call fcn.1400013a1
mov r8, rdi
mov edx, 0x3b
mov r9, rax
mov rcx, rbx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
jmp fcn.1400013a1
xor ebp, ebp
lea rdx, [0x1400207db]
mov rcx, rsi
call fcn.14000b3d8
test eax, eax
jne 0x140005ad9
mov rcx, rbx
call fcn.140005fa3
jmp 0x140005ae1
mov rax, r8
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret