Function at 0x401611
Capabilities:
Parse pe header

Disassembly:
push rbp
sub rsp, 0x3b0
lea rbp, [rsp + 0x80]
call fcn.00402a60
mov dword [rbp + 0x32c], 1
mov dword [rbp + 0x328], 2
mov dword [rbp + 0x324], 3
mov dword [rbp + 0x320], 4
mov dword [rbp + 0x31c], 5
mov dword [rbp + 0x318], 6
mov dword [rbp + 0x314], 7
mov dword [rbp + 0x310], 8
mov dword [rbp + 0x30c], 9
mov dword [rbp + 0x308], 0xa
mov dword [rbp + 0x304], 0xb
mov dword [rbp + 0x300], 0xc
mov dword [rbp + 0x2fc], 0xd
mov dword [rbp + 0x2f8], 0xe
mov dword [rbp + 0x2f4], 0xf
mov dword [rbp + 0x2f0], 0x10
mov dword [rbp + 0x2ec], 0x11
mov dword [rbp + 0x2e8], 0x12
mov dword [rbp + 0x2e4], 0x13
mov dword [rbp + 0x2e0], 0x14
mov dword [rbp + 0x2dc], 0x15
mov dword [rbp + 0x2d8], 0x16
mov dword [rbp + 0x2d4], 0x17
mov dword [rbp + 0x2d0], 0x18
mov dword [rbp + 0x2cc], 0x19
mov dword [rbp + 0x2c8], 0x1a
mov dword [rbp + 0x2c4], 0x1b
mov dword [rbp + 0x2c0], 0x1c
mov dword [rbp + 0x2bc], 0x1d
mov dword [rbp + 0x2b8], 0x1e
mov dword [rbp + 0x2b4], 0x1f
mov dword [rbp + 0x2b0], 0x20
mov dword [rbp + 0x2ac], 0x21
mov dword [rbp + 0x2a8], 0x22
mov dword [rbp + 0x2a4], 0x23
mov dword [rbp + 0x2a0], 0x24
mov dword [rbp + 0x29c], 0x25
mov dword [rbp + 0x298], 0x26
mov dword [rbp + 0x294], 0x27
mov dword [rbp + 0x290], 0x28
mov dword [rbp + 0x28c], 0x29
mov dword [rbp + 0x288], 0x2a
mov dword [rbp + 0x284], 0x2b
mov dword [rbp + 0x280], 0x2c
mov dword [rbp + 0x27c], 0x2d
mov dword [rbp + 0x278], 0x2e
mov dword [rbp + 0x274], 0x2f
mov dword [rbp + 0x270], 0x30
mov dword [rbp + 0x26c], 0x31
mov dword [rbp + 0x268], 0x32
mov dword [rbp + 0x264], 0x33
mov dword [rbp + 0x260], 0x34
mov dword [rbp + 0x25c], 0x35
mov dword [rbp + 0x258], 0x36
mov dword [rbp + 0x254], 0x37
mov dword [rbp + 0x250], 0x38
mov dword [rbp + 0x24c], 0x39
mov dword [rbp + 0x248], 0x3a
mov dword [rbp + 0x244], 0x3b
mov dword [rbp + 0x240], 0x3c
mov dword [rbp + 0x23c], 0x3d
mov dword [rbp + 0x238], 0x3e
mov dword [rbp + 0x234], 0x3f
mov dword [rbp + 0x230], 0x40
mov dword [rbp + 0x22c], 0x41
mov dword [rbp + 0x228], 0x42
mov dword [rbp + 0x224], 0x43
mov dword [rbp + 0x220], 0x44
mov dword [rbp + 0x21c], 0x45
mov dword [rbp + 0x218], 0x46
mov dword [rbp + 0x214], 0x47
mov dword [rbp + 0x210], 0x48
mov dword [rbp + 0x20c], 0x49
mov dword [rbp + 0x208], 0x4a
mov dword [rbp + 0x204], 0x4b
mov dword [rbp + 0x200], 0x4c
mov dword [rbp + 0x1fc], 0x4d
mov dword [rbp + 0x1f8], 0x4e
mov dword [rbp + 0x1f4], 0x4f
mov dword [rbp + 0x1f0], 0x50
mov dword [rbp + 0x1ec], 0x51
mov dword [rbp + 0x1e8], 0x52
mov dword [rbp + 0x1e4], 0x53
mov dword [rbp + 0x1e0], 0x54
mov dword [rbp + 0x1dc], 0x55
mov dword [rbp + 0x1d8], 0x56
mov dword [rbp + 0x1d4], 0x57
mov dword [rbp + 0x1d0], 0x58
mov dword [rbp + 0x1cc], 0x59
mov dword [rbp + 0x1c8], 0x5a
mov dword [rbp + 0x1c4], 0x5b
mov dword [rbp + 0x1c0], 0x5c
mov dword [rbp + 0x1bc], 0x5d
mov dword [rbp + 0x1b8], 0x5e
mov dword [rbp + 0x1b4], 0x5f
mov dword [rbp + 0x1b0], 0x60
mov dword [rbp + 0x1ac], 0x61
mov dword [rbp + 0x1a8], 0x62
mov dword [rbp + 0x1a4], 0x63
mov dword [rbp + 0x1a0], 0x64
mov dword [rbp + 0x19c], 0x65
mov dword [rbp + 0x198], 0x66
mov dword [rbp + 0x194], 0x67
mov dword [rbp + 0x190], 0x68
mov dword [rbp + 0x18c], 0x69
mov dword [rbp + 0x188], 0x6a
mov dword [rbp + 0x184], 0x6b
mov dword [rbp + 0x180], 0x6c
mov dword [rbp + 0x17c], 0x6d
mov dword [rbp + 0x178], 0x6e
mov dword [rbp + 0x174], 0x6f
mov dword [rbp + 0x170], 0x70
mov dword [rbp + 0x16c], 0x71
mov dword [rbp + 0x168], 0x72
mov dword [rbp + 0x164], 0x73
mov dword [rbp + 0x160], 0x74
mov dword [rbp + 0x15c], 0x75
mov dword [rbp + 0x158], 0x76
mov dword [rbp + 0x154], 0x77
mov dword [rbp + 0x150], 0x78
mov dword [rbp + 0x14c], 0x79
mov dword [rbp + 0x148], 0x7a
mov dword [rbp + 0x144], 0x7b
mov dword [rbp + 0x140], 0x7c
mov dword [rbp + 0x13c], 0x7d
mov dword [rbp + 0x138], 0x7e
mov dword [rbp + 0x134], 0x7f
mov dword [rbp + 0x130], pe_nt_image_headers64
mov dword [rbp + 0x12c], 0x81
mov dword [rbp + 0x128], 0x82
mov dword [rbp + 0x124], 0x83
mov dword [rbp + 0x120], 0x84
mov dword [rbp + 0x11c], 0x85
mov dword [rbp + 0x118], 0x86
mov dword [rbp + 0x114], 0x87
mov dword [rbp + 0x110], 0x88
mov dword [rbp + 0x10c], 0x89
mov dword [rbp + 0x108], 0x8a
mov dword [rbp + 0x104], 0x8b
mov dword [rbp + 0x100], 0x8c
mov dword [rbp + 0xfc], 0x8d
mov dword [rbp + 0xf8], 0x8e
mov dword [rbp + 0xf4], 0x8f
mov dword [rbp + 0xf0], 0x90
mov dword [rbp + 0xec], 0x91
mov dword [rbp + 0xe8], 0x92
mov dword [rbp + 0xe4], 0x93
mov dword [rbp + 0xe0], 0x94
mov dword [rbp + 0xdc], 0x95
mov dword [rbp + 0xd8], 0x96
mov dword [rbp + 0xd4], 0x97
mov dword [rbp + 0xd0], 0x98
mov dword [rbp + 0xcc], 0x99
mov dword [rbp + 0xc8], 0x9a
mov dword [rbp + 0xc4], 0x9b
mov dword [rbp + 0xc0], 0x9c
mov dword [rbp + 0xbc], 0x9d
mov dword [rbp + 0xb8], 0x9e
mov dword [rbp + 0xb4], 0x9f
mov dword [rbp + 0xb0], 0xa0
mov dword [rbp + 0xac], 0xa1
mov dword [rbp + 0xa8], 0xa2
mov dword [rbp + 0xa4], 0xa3
mov dword [rbp + 0xa0], 0xa4
mov dword [rbp + 0x9c], 0xa5
mov dword [rbp + 0x98], 0xa6
mov dword [rbp + 0x94], 0xa7
mov dword [rbp + 0x90], 0xa8
mov dword [rbp + 0x8c], 0xa9
mov dword [rbp + 0x88], 0xaa
mov dword [rbp + 0x84], 0xab
mov dword [rbp + 0x80], 0xac
mov dword [rbp + 0x7c], 0xad
mov dword [rbp + 0x78], 0xae
mov dword [rbp + 0x74], 0xaf
mov dword [rbp + 0x70], 0xb0
mov dword [rbp + 0x6c], 0xb1
mov dword [rbp + 0x68], 0xb2
mov dword [rbp + 0x64], 0xb3
mov dword [rbp + 0x60], 0xb4
mov dword [rbp + 0x5c], 0xb5
mov dword [rbp + 0x58], 0xb6
mov dword [rbp + 0x54], 0xb7
mov dword [rbp + 0x50], 0xb8
mov dword [rbp + 0x4c], 0xb9
mov dword [rbp + 0x48], 0xba
mov dword [rbp + 0x44], 0xbb
mov dword [rbp + 0x40], 0xbc
mov dword [rbp + 0x3c], 0xbd
mov dword [rbp + 0x38], 0xbe
mov dword [rbp + 0x34], 0xbf
mov dword [rbp + 0x30], 0xc0
mov dword [rbp + 0x2c], 0xc1
mov dword [rbp + 0x28], 0xc2
mov dword [rbp + 0x24], 0xc3
mov dword [rbp + 0x20], 0xc4
mov dword [rbp + 0x1c], 0xc5
mov dword [rbp + 0x18], 0xc6
mov dword [rbp + 0x14], 0xc7
mov dword [rbp + 0x10], 0xc8
lea rax, [rbp - 0x60]
mov rdx, rax
lea rcx, [0x0040e01a]
call sub.msvcrt.dll_scanf
lea rcx, str.Segmentation_fault
call sub.msvcrt.dll_puts
mov dword [rbp + 0x324], 1
cmp dword [rbp + 0x324], 2
jne 0x401ebf
lea rcx, str._n_Guess_Number:
call sub.msvcrt.dll_printf
lea rax, [rbp + 0xc]
mov rdx, rax
lea rcx, [0x0040e040]
call sub.msvcrt.dll_scanf
mov eax, dword [rbp + 0xc]
and eax, 1
test eax, eax
jne 0x401eb1
mov ecx, dword [rbp + 0xc]
mov edx, 0x55555556
mov eax, ecx
imul edx
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
mov edx, eax
add edx, edx
add edx, eax
mov eax, ecx
sub eax, edx
test eax, eax
jne 0x401eb1
mov ecx, dword [rbp + 0xc]
mov edx, 0x66666667
mov eax, ecx
imul edx
sar edx, 2
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
mov dword [rbp + 0x2d0], eax
mov edx, dword [rbp + 0x2d0]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
sub ecx, eax
mov eax, ecx
mov dword [rbp + 0x2d0], eax
mov eax, dword [rbp + 0xc]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov dword [rbp + 0x2cc], eax
mov ecx, dword [rbp + 0xc]
mov edx, 0x66666667
mov eax, ecx
imul edx
sar edx, 2
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
mov dword [rbp + 0x2c8], eax
mov ecx, dword [rbp + 0x2cc]
mov edx, dword [rbp + 0x2c8]
mov eax, dword [rbp + 0x2d0]
mov r8d, ecx
mov ecx, eax
call fcn.00401530
jmp 0x401ecb
lea rcx, str.Segmentation_fault
call sub.msvcrt.dll_puts
jmp 0x401ecb
lea rcx, str.Segmentation_fault
call sub.msvcrt.dll_puts
mov eax, 0
add rsp, 0x3b0
pop rbp
ret