Function at 0x14005a790
Capabilities:
Parse pe header

Disassembly:
xchg rbp, rbx
mov qword [rsp + 0x18], rbp
xchg rbp, rbx
xchg rbx, rdi
mov qword [rsp + 0x20], rbx
xchg rdi, rbx
nop
sub rsp, 8
mov qword [rsp], rbp
mov rbp, rsp
sub rsp, 0x20
mov eax, dword [rcx + 0x10]
xchg r15, rbx
mov r15, rdx
xchg r15, rbx
add eax, 0xffffff3c
xchg r8, rdi
mov r8, rcx
xchg r8, rdi
cmp eax, 0x14
ja case.0x14005a7ed.202
lea rcx, [0x140000000]
cdqe
mov r8d, dword [rcx + rax*4 + 0x5b309]
add r8, rcx
jmp r8
lea r8, [rbp + 0x10]
mov byte [rbp + 0x10], 0x1c
add byte [rbp + 0x10], 0x45
sub byte [rbp + 0x10], 0x20
sub byte [rbp + 0x10], 0xf
sub byte [rbp + 0x10], 0x18
add byte [rbp + 0x10], 0x4d
xor byte [rbp + 0x10], 0x67
mov edx, 0xd891ae4
add edx, 0x3f3a5bbe
add edx, 0x1781ab7d
sub edx, 0x22c64d95
sub edx, 0x41cf774
add edx, 0x24c23d3a
sub edx, 0x62241a4e
xchg rcx, rdi
mov rdi, rcx
xchg rcx, rdi
call fcn.14003f2f0
test al, al
je case.0x14005a7ed.202
movzx r8d, byte [rbp + 0x10]
xchg rbx, r9
mov rbx, r9
xchg r9, rbx
mov edx, 0x5d458bda
sub edx, 0x4fafb6c
sub edx, 0x53a2fd0b
xor edx, 0x10f913b2
add edx, 0x201514fa
add edx, 0x642181c
sub edx, 0x878b068
sub edx, 0x323cfd7d
xchg r9, rdi
mov rcx, r9
xchg r9, rdi
call fcn.14003aab0
test al, al
je case.0x14005a7ed.202
mov al, 0x28
xor al, 0x45
xor al, 0
xor al, 0x5b
sub al, 0x2a
sub al, 0xb
xchg rbx, r9
mov r9, qword [rsp + 0x40]
xchg r9, rbx
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
nop
add rsp, 8
mov rbp, qword [rsp - 8]
nop
add rsp, 8
jmp qword [rsp - 8]
xor eax, eax
lea r8, [rbp + 0x10]
xchg r15, rdi
mov rcx, r15
xchg rdi, r15
mov word [rbp + 0x10], ax
lea edx, [rax + 2]
call fcn.14003ffb0
test al, al
je case.0x14005a7ed.202
movzx r8d, word [rbp + 0x10]
xchg r9, rcx
mov rcx, rbx
xchg rcx, r9
mov edx, 0x5d442324
xor edx, 0x71bdaaa3
xor edx, 0x2c60f685
add edx, 0x386aa13
xor edx, 0x553ba7f3
xor edx, 0x184e2832
xor edx, 0x4955a6d6
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.14003b110
test al, al
je case.0x14005a7ed.202
mov al, 0xa
add al, 0x38
xor al, 0x7f
sub al, 0x12
xor al, 0x46
sub al, 0x6c
mov rbx, qword [rsp + 0x40]
xchg rbp, rdi
mov rbp, qword [rsp + 0x48]
xchg rdi, rbp
add rsp, 0x20
nop
mov rbp, qword [rsp]
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
xor eax, eax
lea r8, [rbp + 0x10]
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
mov dword [rbp + 0x10], eax
lea edx, [rax + 2]
call fcn.140041380
test al, al
je case.0x14005a7ed.202
mov r8d, dword [rbp + 0x10]
xchg r9, rdi
mov rdi, rbx
xchg rdi, r9
mov edx, 0x63fc1b2f
add edx, 0xe466c1c
xor edx, 0x8bdf1eb
xor edx, 0x50a1aac2
add edx, 0x396efce6
xor edx, 0x63cdd94a
xchg r12, rcx
mov r12, rdi
xchg r12, rcx
call fcn.14003be90
test al, al
je case.0x14005a7ed.202
mov al, 0x71
sub al, 0x38
xor al, 0x41
sub al, 0x26
add al, 8
sub al, 0x59
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
push rbx
push rbx
push rax
push rax
push rax
push rdx
xchg qword [rsp + 0x30], rbp
add rsp, 0x38
ret
lea r8, [rbp + 0x10]
mov byte [rbp + 0x10], 0x6a
xor byte [rbp + 0x10], 0x22
sub byte [rbp + 0x10], 2
sub byte [rbp + 0x10], 0x10
xor byte [rbp + 0x10], 0x19
sub byte [rbp + 0x10], 0xd
xor byte [rbp + 0x10], 0x3a
add byte [rbp + 0x10], 0x20
sub byte [rbp + 0x10], 0x38
mov edx, 0x86a3d8c
xor edx, 0x5a626bb9
xor edx, 0x70d760d2
xor edx, 0x77e592f
xor edx, 0x240ad436
xor edx, 0x2831e1de
xor edx, 0x7f2000bb
sub edx, 0xbd43e3f
sub edx, 0x4ae61c5a
mov byte [rbp + 0x18], 0x6a
xor byte [rbp + 0x18], 0x73
xor byte [rbp + 0x18], 0x2b
sub byte [rbp + 0x18], 0x29
xor byte [rbp + 0x18], 0x65
sub byte [rbp + 0x18], 7
sub byte [rbp + 0x18], 0x65
mov rcx, rdi
call fcn.14003f2f0
test al, al
je case.0x14005a7ed.202
lea r8, [rbp + 0x18]
mov edx, 0x46b35262
xor edx, 0x7db5832a
sub edx, 0x2d23c8fe
add edx, 0x45d21b93
sub edx, 0x49ee59cd
xor edx, 0x4bde5089
xor edx, 0x4031a8ee
xor edx, 0x2293275
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
movzx r8d, byte [rbp + 0x10]
xchg r9, rbx
mov rbx, r9
xchg r9, rbx
mov edx, 0x61833196
sub edx, 0x60eb0aee
add edx, 0x200cd227
sub edx, 0x1b8a189c
add edx, 0xd2366ee
add edx, 0x49c64ecb
sub edx, 0x5c0495ea
xchg r12, rdi
mov rcx, r12
xchg r12, rdi
call fcn.14003aab0
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x18]
mov qword [rbx + 0x18], rax
mov al, 0x26
xor al, 2
add al, 0x1f
xor al, 5
xor al, 0x67
xor al, 0
sub al, 5
sub al, 0x1b
mov byte [rbx + 0x20], 0x59
add byte [rbx + 0x20], 0x1b
sub byte [rbx + 0x20], 0x42
sub byte [rbx + 0x20], 0x15
add byte [rbx + 0x20], 0x18
sub byte [rbx + 0x20], 0x34
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
nop
add rsp, 8
mov rbp, qword [rsp - 8]
nop
add rsp, 8
jmp qword [rsp - 8]
xor eax, eax
lea r8, [rbp + 0x18]
xchg rdi, r12
mov rcx, r12
xchg rdi, r12
mov word [rbp + 0x18], ax
mov byte [rbp + 0x10], al
lea edx, [rax + 2]
call fcn.14003ffb0
test al, al
je case.0x14005a7ed.202
lea r8, [rbp + 0x10]
mov edx, 0x21818180
add edx, 0x1a1bf0e2
xor edx, 0x4db7abc
xor edx, 0x7938a030
xor edx, 0x71bad738
sub edx, 0x37c47fd4
mov rcx, rdi
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
movzx r8d, word [rbp + 0x18]
xchg rsi, r9
mov rsi, rbx
xchg r9, rsi
mov edx, 0x64c0f03d
sub edx, 0x1a7092eb
xor edx, 0x4c0b17d5
add edx, 0x5d4194eb
sub edx, 0x147235dc
add edx, 0x1ea4ef8
add edx, 0x24bfdf41
sub edx, 0x7072bcf0
xor edx, 0x5621add
xchg r14, rcx
mov r14, rdi
xchg r14, rcx
call fcn.14003b110
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x10]
mov qword [rbx + 0x18], rax
mov al, 0x62
sub al, 2
sub al, 0x2d
xor al, 0x34
add al, 0x24
sub al, 0x2a
mov byte [rbx + 0x20], 0x1f
xor byte [rbx + 0x20], 3
add byte [rbx + 0x20], 0x48
sub byte [rbx + 0x20], 0x56
add byte [rbx + 0x20], 0x49
xor byte [rbx + 0x20], 0x74
xor byte [rbx + 0x20], 0x3e
xor byte [rbx + 0x20], 0x1c
mov rbx, qword [rsp + 0x40]
xchg rdi, r15
mov r15, qword [rsp + 0x48]
xchg rdi, r15
add rsp, 0x20
nop
add rsp, 8
xchg qword [rsp - 8], rbp
ret
xor eax, eax
lea r8, [rbp + 0x18]
xchg rbp, rdi
mov rcx, rbp
xchg rdi, rbp
mov dword [rbp + 0x18], eax
mov byte [rbp + 0x10], al
lea edx, [rax + 2]
call fcn.140041380
test al, al
je case.0x14005a7ed.202
lea r8, [rbp + 0x10]
mov edx, 0x4809ce0e
sub edx, 0x195a997b
xor edx, 0x1c9e620f
xor edx, 0x327e3ed6
add edx, 0x5517e068
sub edx, 0x556748b0
xchg r10, rcx
mov r10, rdi
xchg r10, rcx
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
mov r8d, dword [rbp + 0x18]
xchg rsi, r9
mov rsi, rbx
xchg r9, rsi
mov edx, 0x6ec7e370
xor edx, 0x46449787
add edx, 0x689b5d2
xor edx, 0x59993da2
sub edx, 0x2e27e625
add edx, 0xde7c814
xor edx, 0x1e33a5d9
sub edx, 0x48605c81
xchg r14, rcx
mov r14, rdi
xchg r14, rcx
call fcn.14003be90
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x10]
mov qword [rbx + 0x18], rax
mov al, 0x6e
xor al, 2
sub al, 0x5a
add al, 0x17
add al, 0x28
sub al, 0xe
sub al, 0x42
mov byte [rbx + 0x20], 0x52
xor byte [rbx + 0x20], 0x5b
xor byte [rbx + 0x20], 6
add byte [rbx + 0x20], 0x34
add byte [rbx + 0x20], 0x22
sub byte [rbx + 0x20], 0x64
xchg rsi, rbx
mov rsi, qword [rsp + 0x40]
xchg rbx, rsi
xchg rdx, rdi
mov rdx, qword [rsp + 0x48]
xchg rdi, rdx
add rsp, 0x20
nop
mov rbp, qword [rsp]
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
lea r8, [rbp + 0x10]
mov byte [rbp + 0x10], 0x74
sub byte [rbp + 0x10], 0x69
add byte [rbp + 0x10], 0x6f
sub byte [rbp + 0x10], 0x5b
xor byte [rbp + 0x10], 0x3b
xor byte [rbp + 0x10], 0xe
add byte [rbp + 0x10], 0xb
add byte [rbp + 0x10], 0xb
sub byte [rbp + 0x10], 0x40
mov edx, 0xcf0d95f
add edx, 0x57bb7c1b
sub edx, 0x29711dcc
sub edx, 0x29c10c3b
xor edx, 0x4f7b3ec1
sub edx, 0x55fa0e40
add edx, 0x1a8c7f49
sub edx, 0x229386b9
mov rcx, rdi
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
mov edx, 0x5f4d8297
sub edx, 0x4288eab0
xor edx, 0x4a0028bc
sub edx, 0x3cc4d8de
add edx, 0x32145fa2
sub edx, 0xfe6d759
add edx, 0x2199f569
sub edx, 0x5dc7642d
mov r9, rbx
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
lea r8d, [rdx - 1]
call fcn.14003b770
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x10]
mov qword [rbx + 0x18], rax
mov al, 0x49
sub al, 2
xor al, 0x21
sub al, 0x1b
sub al, 2
add al, 0x22
sub al, 0x6a
mov byte [rbx + 0x20], 0xd
add byte [rbx + 0x20], 0x31
sub byte [rbx + 0x20], 0xb
sub byte [rbx + 0x20], 0x28
add byte [rbx + 0x20], 0x45
xor byte [rbx + 0x20], 0x51
xchg rbx, rdx
mov rdx, qword [rsp + 0x40]
xchg rbx, rdx
xchg rdi, r11
mov r11, qword [rsp + 0x48]
xchg rdi, r11
add rsp, 0x20
push rbx
push rcx
push rbx
push rcx
push rbx
push rbx
push rdx
push rbx
xchg qword [rsp + 0x40], rbp
add rsp, 0x48
nop
add rsp, 8
jmp qword [rsp - 8]
lea r8, [rbp + 0x10]
mov byte [rbp + 0x10], 0x57
sub byte [rbp + 0x10], 0x10
add byte [rbp + 0x10], 0xe
sub byte [rbp + 0x10], 0x10
xor byte [rbp + 0x10], 0x77
xor byte [rbp + 0x10], 0x27
xor byte [rbp + 0x10], 8
xor byte [rbp + 0x10], 0x1d
mov edx, 0x75ac7d4
xor edx, 0x53d5b6bc
sub edx, 0x4cfd69e5
xor edx, 0x772232b7
xor edx, 0x4e3e5cbb
add edx, 0x110d9a7d
xor edx, 0x4f9c040e
xchg rcx, rdx
mov rdx, rdi
xchg rdx, rcx
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
mov edx, 0xd4cbdd8
xor edx, 0x7267c311
sub edx, 0x547bce98
sub edx, 0xb51dfee
add edx, 0x1cfdd30a
sub edx, 0x3c9511b
xor edx, 0x5dd1c357
sub edx, 0x65439163
xchg rbx, r12
mov r9, r12
xchg r12, rbx
mov r8d, edx
xchg rsi, rcx
mov rsi, rdi
xchg rcx, rsi
call fcn.14003b770
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x10]
xchg r11, rax
mov qword [rbx + 0x18], r11
xchg r11, rax
mov al, 0x30
sub al, 9
add al, 0x3e
sub al, 0x15
sub al, 0x50
add al, 0x6f
sub al, 0x69
xor al, 0x76
sub al, 0x6f
mov byte [rbx + 0x20], 0x6d
sub byte [rbx + 0x20], 0x3d
sub byte [rbx + 0x20], 0xd
xor byte [rbx + 0x20], 0x20
xor byte [rbx + 0x20], 2
add byte [rbx + 0x20], 3
sub byte [rbx + 0x20], 3
xchg rbx, rsi
mov rsi, qword [rsp + 0x40]
xchg rbx, rsi
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
nop
add rsp, 8
xchg qword [rsp - 8], rbp
nop
add rsp, 8
jmp qword [rsp - 8]
lea r8, [rbp + 0x10]
mov byte [rbp + 0x10], 0x75
sub byte [rbp + 0x10], 0x2a
add byte [rbp + 0x10], 0x10
add byte [rbp + 0x10], 5
xor byte [rbp + 0x10], 0x2f
sub byte [rbp + 0x10], 0x3b
xor byte [rbp + 0x10], 0x6e
sub byte [rbp + 0x10], 0x1b
xor byte [rbp + 0x10], 0x5f
mov edx, 0x7831211d
xor edx, 0x67dd7245
add edx, 0x410419a6
sub edx, 0x9e5cc84
sub edx, 0x4e447f1d
sub edx, 0x8c6215b
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
mov edx, 0x512465ec
add edx, 0x2177f833
xor edx, 0xf8de22d
sub edx, 0x1af5bff4
xor edx, 0x7355b2f3
add edx, 0x65d6b6fb
sub edx, 0x3d1853b3
xor edx, 0x3a0cb217
xchg r15, r9
mov r15, rbx
xchg r15, r9
xchg rdi, rsi
mov rcx, rsi
xchg rsi, rdi
lea r8d, [rdx + 2]
call fcn.14003b770
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x10]
xchg r13, rax
mov qword [rbx + 0x18], r13
xchg r13, rax
mov al, 0x3c
xor al, 0x39
xor al, 0x57
sub al, 0xd
add al, 5
xor al, 0x50
sub al, 7
sub al, 0x12
mov byte [rbx + 0x20], 0x7a
sub byte [rbx + 0x20], 0x4f
add byte [rbx + 0x20], 0x22
xor byte [rbx + 0x20], 4
xor byte [rbx + 0x20], 0x26
sub byte [rbx + 0x20], 0x6e
xchg rbx, r15
mov r15, qword [rsp + 0x40]
xchg rbx, r15
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
push rbx
push rax
xchg qword [rsp + 0x10], rbp
pop rax
pop rbx
add rsp, 8
ret
lea r8, [rbp + 0x10]
mov byte [rbp + 0x10], 0x40
add byte [rbp + 0x10], 0x24
sub byte [rbp + 0x10], 0x15
xor byte [rbp + 0x10], 0x19
add byte [rbp + 0x10], 7
sub byte [rbp + 0x10], 0x5a
xor byte [rbp + 0x10], 3
mov edx, 0x44f39746
sub edx, 0x1d197e4
xor edx, 0x3af6e361
sub edx, 0x64a875e0
xor edx, 0x10b06a70
xor edx, 0x59ecc51
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
mov edx, 0x2d5b33aa
xor edx, 0x14532656
sub edx, 0x17f23179
sub edx, 0x183f0a28
sub edx, 0x2b81955
add edx, 0x452298e7
sub edx, 0x4b4159eb
mov r9, rbx
xchg r12, rdi
mov rcx, r12
xchg rdi, r12
lea r8d, [rdx + 6]
call fcn.14003b770
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x10]
xchg r14, rax
mov qword [rbx + 0x18], r14
xchg r14, rax
mov al, 2
add al, 0x25
xor al, 0x43
xor al, 0x34
add al, 0x1c
sub al, 0x4e
xor al, 0x32
xor al, 0x2d
mov byte [rbx + 0x20], 0x29
sub byte [rbx + 0x20], 0x29
xor byte [rbx + 0x20], 0x60
add byte [rbx + 0x20], 5
sub byte [rbx + 0x20], 0x35
add byte [rbx + 0x20], 0x20
xor byte [rbx + 0x20], 0xc
sub byte [rbx + 0x20], 0x5b
mov rbx, qword [rsp + 0x40]
xchg r13, rdi
mov r13, qword [rsp + 0x48]
xchg r13, rdi
add rsp, 0x20
push rcx
push rdx
push rdx
xchg qword [rsp + 0x18], rbp
add rsp, 0x20
nop
add rsp, 8
jmp qword [rsp - 8]
lea r8, [rbp + 0x10]
mov byte [rbp + 0x10], 0x3c
xor byte [rbp + 0x10], 0x35
xor byte [rbp + 0x10], 9
xor byte [rbp + 0x10], 0x7c
sub byte [rbp + 0x10], 0x1e
sub byte [rbp + 0x10], 0x15
add byte [rbp + 0x10], 0x1f
add byte [rbp + 0x10], 0
sub byte [rbp + 0x10], 0x68
mov edx, 0xef5709b
add edx, 0x5f9e87af
xor edx, 0x6a040fe8
add edx, 0x20ad5491
add edx, 0x2016a081
xor edx, 0x71f39ef5
add edx, 0x1de0b4e0
add edx, 0x1b48f3ee
xor edx, 0x6dd21b0d
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
call fcn.14003ec50
test al, al
je case.0x14005a7ed.202
mov edx, 0x6eedbe6a
xor edx, 0x7490cf82
xor edx, 0x3f04cb92
add edx, 0x12b5eace
add edx, 0x204ef056
add edx, 0xaac4f78
sub edx, 0x2a251358
sub edx, 0x3905d1bc
mov r9, rbx
xchg rcx, rbx
mov rbx, rdi
xchg rcx, rbx
lea r8d, [rdx + 0xe]
call fcn.14003b770
test al, al
je case.0x14005a7ed.202
movzx eax, byte [rbp + 0x10]
xchg r13, rax
mov qword [rbx + 0x18], r13
xchg r13, rax
mov al, 0x52
add al, 0
sub al, 0x4e
xor al, 0x25
add al, 0x3b
xor al, 0x34
xor al, 0x29
add al, 0
sub al, 0x40
mov byte [rbx + 0x20], 0x12
add byte [rbx + 0x20], 0x3f
sub byte [rbx + 0x20], 1
sub byte [rbx + 0x20], 0xa
add byte [rbx + 0x20], 0x20
sub byte [rbx + 0x20], 0x65
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
push rcx
push rbx
push rdx
push rcx
push rbx
push rax
push rcx
push rcx
xchg qword [rsp + 0x40], rbp
pop rcx
pop rcx
pop rax
pop rbx
pop rcx
pop rdx
pop rbx
pop rcx
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
mov rbx, qword [rsp + 0x40]
xor al, al
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
nop
xchg qword [rsp], rbp
add rsp, 8
ret