Function at 0x40efd3
Capabilities:
Parse pe header

Disassembly:
push esi
mov esi, ecx
mov eax, dword [esi + 4]
cmp dword [eax], eax
jne 0x40f2ab
push ebx
push edi
push 0xa
xor ebx, ebx
pop edi
mov dword [esi + 0x3c], ebx
push edi
push 0x7e
push 0x60
call fcn.0040e936
push edi
push 0x21
push 0x31
mov ecx, esi
call fcn.0040e936
push edi
push 0x40
push 0x32
mov ecx, esi
call fcn.0040e936
push edi
push 0x23
push 0x33
mov ecx, esi
call fcn.0040e936
push edi
push 0x24
push 0x34
mov ecx, esi
call fcn.0040e936
push edi
push 0x25
push 0x35
mov ecx, esi
call fcn.0040e936
push edi
push 0x5e
push 0x36
mov ecx, esi
call fcn.0040e936
push edi
push 0x26
push 0x37
mov ecx, esi
call fcn.0040e936
push edi
push 0x2a
push 0x38
mov ecx, esi
call fcn.0040e936
push edi
push 0x28
push 0x39
mov ecx, esi
call fcn.0040e936
push edi
push 0x29
push 0x30
mov ecx, esi
call fcn.0040e936
push edi
push 0x5f
push 0x2d
mov ecx, esi
call fcn.0040e936
push edi
push 0x2b
push 0x3d
mov ecx, esi
call fcn.0040e936
push 0xfffffffffffffff4
push 3
push ebx
mov ecx, esi
call fcn.0040e936
push ebx
push ebx
push ebx
mov ecx, esi
call fcn.0040e936
inc dword [esi + 0x3c]
push edi
push 0x51
push 0x71
mov ecx, esi
call fcn.0040e936
push edi
push 0x57
push 0x77
mov ecx, esi
call fcn.0040e936
push edi
push 0x45
push 0x65
mov ecx, esi
call fcn.0040e936
push edi
push 0x52
push 0x72
mov ecx, esi
call fcn.0040e936
push edi
push 0x54
push 0x74
mov ecx, esi
call fcn.0040e936
push edi
push 0x59
push 0x79
mov ecx, esi
call fcn.0040e936
push edi
push 0x55
push 0x75
mov ecx, esi
call fcn.0040e936
push edi
push 0x49
push 0x69
mov ecx, esi
call fcn.0040e936
push edi
push 0x4f
push 0x6f
mov ecx, esi
call fcn.0040e936
push edi
push 0x50
push 0x70
mov ecx, esi
call fcn.0040e936
push edi
push 0x7b
push 0x5b
mov ecx, esi
call fcn.0040e936
push edi
push 0x7d
push 0x5d
mov ecx, esi
call fcn.0040e936
push edi
push 0x7c
push 0x5c
mov ecx, esi
call fcn.0040e936
push 0xfffffffffffffff4
push 6
push ebx
mov ecx, esi
call fcn.0040e936
push 1
push ebx
push ebx
mov ecx, esi
call fcn.0040e936
inc dword [esi + 0x3c]
push 0x12
push 1
push ebx
mov ecx, esi
call fcn.0040e936
push edi
push 0x41
push 0x61
mov ecx, esi
call fcn.0040e936
push edi
push 0x53
push 0x73
mov ecx, esi
call fcn.0040e936
push edi
push 0x44
push 0x64
mov ecx, esi
call fcn.0040e936
push edi
push 0x46
push 0x66
mov ecx, esi
call fcn.0040e936
push edi
push 0x47
push 0x67
mov ecx, esi
call fcn.0040e936
push edi
push 0x48
push 0x68
mov ecx, esi
call fcn.0040e936
push edi
push 0x4a
push 0x6a
mov ecx, esi
call fcn.0040e936
push edi
push 0x4b
push 0x6b
mov ecx, esi
call fcn.0040e936
push edi
push 0x4c
push 0x6c
mov ecx, esi
call fcn.0040e936
push edi
push 0x3a
push 0x3b
mov ecx, esi
call fcn.0040e936
push edi
push 0x22
push 0x27
mov ecx, esi
call fcn.0040e936
push 0xc
push 4
push ebx
mov ecx, esi
call fcn.0040e936
push 0xfffffffffffffff6
push 5
push ebx
mov ecx, esi
call fcn.0040e936
push 2
push ebx
push ebx
mov ecx, esi
call fcn.0040e936
inc dword [esi + 0x3c]
push 0x19
push 2
push ebx
mov ecx, esi
call fcn.0040e936
push edi
push 0x5a
push 0x7a
mov ecx, esi
call fcn.0040e936
push edi
push 0x58
push 0x78
mov ecx, esi
call fcn.0040e936
push edi
push 0x43
push 0x63
mov ecx, esi
call fcn.0040e936
push edi
push 0x56
push 0x76
mov ecx, esi
call fcn.0040e936
push edi
push 0x42
push 0x62
mov ecx, esi
call fcn.0040e936
push edi
push 0x4e
push 0x6e
mov ecx, esi
call fcn.0040e936
push edi
push 0x4d
push 0x6d
mov ecx, esi
call fcn.0040e936
push edi
push 0x3c
push 0x2c
mov ecx, esi
call fcn.0040e936
push edi
push 0x3e
push 0x2e
mov ecx, esi
call fcn.0040e936
push edi
push 0x3f
push 0x2f
mov ecx, esi
call fcn.0040e936
push 0xfffffffffffffff6
push 0x20
push 0x20
mov ecx, esi
call fcn.0040e936
push 3
push ebx
push ebx
mov ecx, esi
call fcn.0040e936
inc dword [esi + 0x3c]
pop edi
pop ebx
mov ecx, esi
call fcn.0040ef83
pop esi
ret