Function at 0x5c45b0
Capabilities:
Parse pe header

Disassembly:
push r15
je 0x5c48a5
jne 0x5c48a5
add byte [rax], al
add byte [rax], al
add rbp, rcx
xor edx, edx
xor r8d, r8d
call rbp
mov dword [r12 + 0x1c], 0
mov rcx, qword [r12 + 0x10]
je 0x5c4c36
jne 0x5c4c36
jmp 0x222c92c
add r14d, 1
je 0x5c496d
jne 0x5c496d
add byte [rax], al
add byte [rax], al
mov r8d, 0x8000
xor edx, edx
call qword [rdi + 0x18]
mov r8d, 0x8000
mov rcx, r12
je 0x5c4dd3
jne 0x5c4dd3
add byte [rax], al
add byte [rax], al
cmp rax, rbp
jne 0x5c4640
je 0x5c4f38
jne 0x5c4f38
add byte [rax], al
add byte [rax], al
lea rdx, [r15 + rcx]
add rcx, r13
xor ebp, ebp
nop dword [rax]
movzx ebx, byte [rcx + rbp]
mov byte [rdx + rbp], bl
add rbp, 1
je 0x5c461f
jne 0x5c461f
test r11, r11
je 0x5c4805
jne 0x5c4805
add byte [rax], al
add byte [rax], al
mov r9, qword [rsp + 0x30]
je 0x5c4910
add rdi, rsi
add rdi, r10
add rbp, rsi
add rbp, r13
xor eax, eax
nop dword [rax + rax]
je 0x5c48b9
jne 0x5c48b9
jmp 0x4947cfdd
mov rbx, r13
add rbx, rbp
je 0x5c4910
lea rsi, [rax - 1]
je 0x5c4faa
jne 0x5c4faa
add byte [rax], al
add byte [rax], al
movzx ebx, byte [r13 + rcx]
mov byte [r15 + rcx], bl
je 0x5c4a1b
jne 0x5c4a1b
je 0x101ccc11
test rax, rax
je 0x5c4f38
test byte [rdx + 8], ch
add byte [rax], al
je 0x5c4634
jne 0x5c4634
add byte [rax], al
add byte [rax], al
mov rdx, r12
call fcn.005c3650
mov rax, qword [r12]
mov edx, dword [rax + 0x50]
lea r9, [rsp + 0x74]
je 0x5c4d19
jne 0x5c4d19
jmp 0x222ca4b
add rsi, 1
movsxd rax, edx
cmp rsi, rax
jl 0x5c4b98
test rcx, rcx
je 0x5c4a3c
je 0x5c4a31
jne 0x5c4a31
add ecx, eax
test ecx, ecx
jle 0x5c4a93
mov edx, ecx
lea rcx, [rdx - 1]
je 0x5c4e82
jne 0x5c4e82
je 0xffffffffffa6d48e
lea rcx, [rdx - 1]
mov eax, edx
and eax, 3
cmp rcx, 3
je 0x5c4e53
jne 0x5c4e53
jmp 0xffffffff861fa6a1
pop r15
ret
test eax, eax
je 0x5c4ed2
mov rcx, rdi
je 0x5c46de
jne 0x5c46de
add byte [rax], al
add byte [rax], al
mov byte [r15 + rcx], bl
movzx ebx, byte [r13 + rcx + 1]
mov byte [r15 + rcx + 1], bl
movzx ebx, byte [r13 + rcx + 2]
je 0x5c4e41
jne 0x5c4e41
add byte [rax], al
add byte [rax], al
xor ecx, ecx
cmp byte [rsp + 0x48], 0
cmovne ecx, esi
xor ebp, ecx
je 0x5c4b14
jne 0x5c4b14
add byte [rax], al
add byte [rax], al
mov byte [rbp + rdi], 0
mov edi, ebx
add ebx, 1
cmp rdi, rax
jb 0x5c4960
jmp 0x5c45e7
mov rdx, qword [rsp + 0x60]
lea r8, [rdx + rbp]
je 0x5c4cba
jne 0x5c4cba
mov edi, dword [rcx + 0xc]
lea r11, [r10 + rdi]
test eax, eax
jle 0x5c4910
je 0x5c464f
jne 0x5c464f
je 0x161cc18
je 0x5c4910
add byte [rax], al
mov ebp, dword [rcx + 0x14]
je 0x5c468d
jne 0x5c468d
jmp 0xffffffff89a55f1e
call qword [rsi]
mov r12, rax
mov qword [rax + 8], r15
mov qword [rax + 0x18], 0
mov qword [rax + 0x10], 0
test r14b, r14b
je 0x5c4b69
jne 0x5c4b69
je 0x102ad191
mov rsi, rcx
movzx eax, word [rdx]
mov bh, 2
cmp eax, 0x5a4d
jne 0x5c4e16
movsxd rbp, dword [r13 + 0x3c]
je 0x5c4be1
jne 0x5c4be1
cmp dword [r13 + 4], 0xa1a0a0d
je 0x5c4edf
jne 0x5c4edf
jmp 0x191dcbc7
add rcx, 0x18
lea rax, [r13 + 3]
mov qword [rsp + 0x60], rax
lea rax, [r10 + 3]
mov qword [rsp + 0x58], rax
xor r14d, r14d
mov qword [rsp + 0x68], r12
je 0x5c4b39
jne 0x5c4b39
push r14
push r13
push r12
je 0x5c4ef1
jne 0x5c4ef1
je 0x5b0fecc
movzx edx, byte [rbp + rax]
mov byte [rdi + rax], dl
add rax, 1
cmp rbx, rax
add byte [rax - 0x7cb7f8ec], cl
rol byte [rcx], 0x48
cmp ebx, eax
jne 0x5c4680
jmp 0x5c4910
mov r8, r15
je 0x5c4a56
jne 0x5c4a56
jmp 0x4574a0e3
call qword [rdi + 0x18]
xor r12d, r12d
mov rax, r12
add rsp, 0x78
je 0x5c499b
jne 0x5c499b
add byte [rax], al
add byte [rax], al
jmp 0x5c4d70
mov dword [rcx + 8], r11d
je 0x5c45e7
jne 0x5c45e7
je 0x305d0167
mov r8d, 0x3000
add byte [rax], al
mov r9d, 4
xor ecx, ecx
je 0x5c481b
jne 0x5c481b
je 0xffffffff8a314a8e
add rbp, r10
mov dword [rcx + 8], ebp
je 0x5c45e7
imul ecx, dword [rax], 0xfc9d840f
invalid
mov ebx, 1
xor edi, edi
nop word cs:[rax + rax]
nop dword [rax + rax]
je 0x5c47bb
jne 0x5c47bb
jmp 0x291dccb9
add rcx, 0x28
mov rax, qword [r12]
movzx eax, word [rax + 6]
je 0x5c4de2
jne 0x5c4de2
jmp 0x8c9acd3
movsxd rbp, dword [r13 + 8]
mov edi, dword [rbp + r13 + 0x58]
add rbp, r13
mov eax, 1
je 0x5c49eb
jne 0x5c49eb
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
je 0x5c475c
jne 0x5c475c
je 0xf70d700
lea rdx, [r15 + rcx]
add rcx, r13
xor ebp, ebp
nop dword [rax]
movzx ebx, byte [rcx + rbp]
mov byte [rdx + rbp], bl
je 0x5c4a82
jne 0x5c4a82
mov ebp, dword [rax + 0x28]
test ebp, ebp
je 0x5c48e6
je 0x5c479f
jne 0x5c479f
jmp 0x24a0d337
mov qword [rsp + 0x40], rax
mov r14b, 1
mov edx, dword [rbp + 0x50]
mov rcx, qword [rbp + 0x30]
mov r8d, 0x1000
mov r9d, 4
call qword [rsi]
mov r15, rax
je 0x5c4f60
jne 0x5c4f60
add byte [rax], al
add byte [rax], al
movzx ebx, byte [r13 + rcx + 1]
je 0x5c4c68
jne 0x5c4c68
add byte [rax], al
add byte [rax], al
mov r8d, 0x8000
xor edx, edx
call qword [rdi + 0x18]
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x5c4606
je 0x5c45fb
jne 0x5c45fb
sub r8, qword [r9 + 0x30]
mov esi, dword [rsp + 0x3c]
mov dword [rsp + 0x20], esi
mov rdx, r12
mov rbx, qword [rsp + 0x40]
mov r9d, ebx
call fcn.005c3890
je 0x5c4d36
jne 0x5c4d36
add byte [rax], al
add byte [rax], al
add rbp, 1
cmp rax, rbp
jne 0x5c49c0
mov eax, dword [r13 + 0x3c]
mov qword [rsp + 0x48], r14
je 0x5c4dad
jne 0x5c4dad
je 0x5c4a8f
je 0x5c49b3
jne 0x5c49b3
jmp 0x31c0d2fc
mov byte [r9 + rsi - 3], r12b
movzx edx, byte [r8 + rsi - 2]
mov byte [r9 + rsi - 2], dl
je 0x5c4bac
jne 0x5c4bac
je 0x6d4ce3b
cmp word [rax + 6], 0
je 0x5c48d0
add byte [rdi], cl
test ah, dh
std
invalid
je 0x5c4d00
jne 0x5c4d00
add byte [rax], al
add byte [rax], al
movzx ebx, byte [r13 + rcx + 3]
mov byte [r15 + rcx + 3], bl
add rcx, 4
cmp rdx, rcx
jne 0x5c4c20
je 0x5c46c5
jne 0x5c46c5
add byte [rax], al
add byte [rax], al
add rbp, r15
test byte [rax + 0x17], 0x20
jne 0x5c4b24
call rbp
jmp 0x5c4ec4
mov edx, 1
je 0x5c4eb8
jne 0x5c4eb8
add byte [rax], al
add byte [rax], al
mov eax, dword [rcx + 0x10]
test rax, rax
jne 0x5c47e8
je 0x5c48fd
jne 0x5c48fd
je 0xffffffffff96d966
jle 0x5c4a93
invalid
mov edx, ecx
je 0x5c4742
jne 0x5c4742
je 0x356cf7c
je 0x5c4e69
add byte [rax], al
mov eax, dword [r13 + 8]
mov r9, qword [rsp + 0x30]
mov ecx, dword [r9 + 0x54]
add ecx, eax
test ecx, ecx
je 0x5c4b53
jne 0x5c4b53
add byte [rax], al
add byte [rax], al
add rsi, 1
movsxd rax, edx
cmp rsi, rax
jge 0x5c470f
mov rax, qword [rcx + rsi*8]
cmp rax, 0xffffffffffffffff
je 0x5c4ca1
jne 0x5c4ca1
movzx edx, byte [r8 + rsi - 1]
mov byte [r9 + rsi - 1], dl
movzx edx, byte [r8 + rsi]
mov byte [r9 + rsi], dl
add rsi, 4
cmp rax, rsi
jne 0x5c4cd0
test rbx, rbx
mov r12, qword [rsp + 0x68]
je 0x5c4662
jne 0x5c4662
cmp dword [r13 + rbp], 0x4550
jne 0x5c48e3
xor eax, eax
je 0x5c4e04
jne 0x5c4e04
je 0x24d8cf45
cmp dword [r12 + 0x1c], 0
sbb al, 0
je 0x5c45d5
je 0x5c4e34
jne 0x5c4e34
nop dword [rax + rax]
movzx ebx, byte [r13 + rcx]
je 0x5c477a
jne 0x5c477a
add byte [rax], al
add byte [rax], al
test rcx, rcx
je 0x5c4a3c
mov edx, dword [r12 + 0x18]
test edx, edx
je 0x5c4d7c
jne 0x5c4d7c
jmp 0x24a8d7a0
mov rcx, qword [r12 + 8]
mov ebp, dword [rax + 0x28]
je 0x5c45c2
jne 0x5c45c2
jmp 0xfb8d4ad
mov byte [r15 + rcx + 1], bl
movzx ebx, byte [r13 + rcx + 2]
mov byte [r15 + rcx + 2], bl
movzx ebx, byte [r13 + rcx + 3]
mov byte [r15 + rcx + 3], bl
add rcx, 4
cmp rdx, rcx
jne 0x5c46ad
test rax, rax
je 0x5c4aa4
jne 0x5c4aa4
je 0x155d0b4
je 0x5c4da0
add byte [rax], al
mov rcx, rax
je 0x5c4e9b
jne 0x5c4e9b
add byte [rax], al
add byte [rax], al
mov rdx, qword [rsp + 0x58]
lea r9, [rdx + rdi]
sub rax, rbx
xor esi, esi
nop dword [rax + rax]
movzx r12d, byte [r8 + rsi - 3]
je 0x5c4ab3
jne 0x5c4ab3
je 0x389db031
movsxd rax, dword [r9 + 0x38]
test rax, rax
jle 0x5c45e7
mov ebp, dword [rcx + 0xc]
je 0x5c493e
jne 0x5c493e
mov r10, qword [r12 + 8]
movzx ecx, word [rax + 0x14]
add rcx, rax
je 0x5c487b
jne 0x5c487b
jmp 0x9d055e
mov r8d, 0x40
mov rcx, r15
call qword [rdi + 8]
mov rax, qword [r12]
je 0x5c49d3
jne 0x5c49d3
jmp 0x24d8d882
mov rdi, qword [rsp + 0x50]
mov rcx, rdi
mov rdx, r12
mov r8d, esi
mov r9d, ebx
call fcn.005c3bf0
je 0x5c475f
jne 0x5c475f
jmp 0x24c0d8a9
mov r12, qword [rsp + 0x68]
mov r9, qword [rsp + 0x30]
jne 0x5c466d
jmp 0x5c4910
je 0x5c4ce4
jne 0x5c4ce4
jle 0x5c4a31
xor esi, esi
mov rax, qword [rcx + rsi*8]
cmp rax, 0xffffffffffffffff
jne 0x5c4ca7
nop word cs:[rax + rax]
nop dword [rax]
je 0x5c4b88
jne 0x5c4b88
jmp 0x24d0d6f9
mov qword [rsp + 0x50], rsi
cdqe
lea rcx, [r15 + rax]
mov qword [r12], rcx
mov qword [r15 + rax + 0x30], r15
mov rax, qword [r12]
je 0x5c4ad1
jne 0x5c4ad1
je 0xffffffff846c2008
xor edx, edx
je 0x5c48e0
add eax, 0xffffffb
test edi, edi
cli
invalid
jne 0x5c48e0
jmp 0x10228727
cmp r14d, eax
jae 0x5c48d0
mov eax, dword [rcx + 0x10]
test rax, rax
je 0x5c4d70
je 0x5c47e8
jne 0x5c47e8
jmp 0x24a0d750
mov qword [rsp + 0x40], rax
add rbp, r13
xor r14d, r14d
xor edi, edi
jmp 0x5c49f3
cmp dword [r13], 0x474e5089
jne 0x5c48e3
je 0x5c4866
jne 0x5c4866
add byte [rax], al
add byte [rax], al
je 0x5c4f28
jne 0x5c4f28
jmp 0xfb8d686
mov byte [r15 + rcx + 2], bl
je 0x5c4aec
jne 0x5c4aec
jmp 0x119d166
jae 0x5c4f16
xor ecx, ecx
test rax, rax
jne 0x5c4634
jmp 0x5c4f38
mov eax, dword [r13 + 0x3c]
mov r9, qword [rsp + 0x30]
mov ecx, dword [r9 + 0x54]
je 0x5c4724
jne 0x5c4724
mov eax, edx
and eax, 3
cmp rcx, 3
jae 0x5c4f41
xor ecx, ecx
je 0x5c4f08
jne 0x5c4f08
add byte [rax], al
add byte [rax], al
call qword [rdi + 0x38]
mov edx, dword [r12 + 0x18]
mov rcx, qword [r12 + 0x10]
je 0x5c46ff
jne 0x5c46ff
add byte [rax], al
add byte [rax], al
mov rcx, r15
xor r8d, r8d
call rbp
test eax, eax
je 0x5c4ed2
mov dword [r12 + 0x1c], 1
jmp 0x5c48e6
je 0x5c4c00
jne 0x5c4c00
jmp 0xfffffffffa5ad3f2
jne 0x5c48e3
je 0x5c4986
jne 0x5c4986
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov r13, rdx
je 0x5c4845
jne 0x5c4845
test rax, rax
jne 0x5c4aa6
jmp 0x5c4a8f
sub rdx, rax
xor ecx, ecx
je 0x5c4c18
jne 0x5c4c18
jmp 0x2460da75
mov rax, qword [r12]
je 0x5c4c53
jne 0x5c4c53
mov eax, dword [r13 + 8]
jmp 0x5c4a93
sub rdx, rax
xor ecx, ecx
nop word cs:[rax + rax]
je 0x5c46ad
jne 0x5c46ad
add byte [rax], al
add byte [rax], al
test rax, rax
jne 0x5c4f8f
mov edx, dword [rbp + 0x50]
xor r12d, r12d
mov r8d, 0x1000
mov r9d, 4
je 0x5c4f7f
jne 0x5c4f7f
add byte [rax], al
add byte [rax], al
xor ecx, ecx
call qword [rsi]
mov r15, rax
test rax, rax
je 0x5c48e6
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x3c], edi
mov edx, 0x20
je 0x5c4922
jne 0x5c4922
jmp 0xffffffffe3e01337
mov ebx, eax
and ebx, 3
cmp rsi, 3
jae 0x5c47d3
xor esi, esi
test rbx, rbx
je 0x5c4d59
jne 0x5c4d59
nop word [rax + rax]