Function at 0x407d10
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x421950
mov eax, dword fs:[0]
push eax
sub esp, 0x68
mov eax, dword [0x42c008]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, dword [ebp + 0xc]
xor ebx, ebx
mov edi, dword [ebp + 8]
mov dword [ebp - 4], 0
cmp esi, 0x40
jb 0x407e48
mov eax, 0x5a4d
cmp word [edi], ax
jne 0x407e48
mov ebx, dword [edi + 0x3c]
test ebx, ebx
js 0x407e46
cmp esi, ebx
jb 0x407e46
mov edx, esi
lea ecx, [edi + ebx]
sub edx, ebx
cmp edx, 4
jb 0x407e46
cmp dword [ecx], 0x4550
jne 0x407e46
sub edx, 4
cmp edx, 0x14
jb 0x407e46
movzx eax, word [ecx + 4]
sub edx, 0x14
mov dword [ebp - 0x30], 0x14c
cmp ax, word [ebp - 0x30]
jne 0x407dd8
cmp edx, 0xe0
jb 0x407e46
mov eax, 0x10b
cmp word [ecx + 0x18], ax
jne 0x407e46
mov eax, dword [ecx + 0x98]
mov ecx, dword [ecx + 0x9c]
jmp 0x407e11
mov dword [ebp - 0x30], 0x8664
cmp ax, word [ebp - 0x30]
je 0x407df2
mov dword [ebp - 0x30], 0xaa64
cmp ax, word [ebp - 0x30]
jne 0x407e46
cmp edx, 0xf0
jb 0x407e46
mov eax, 0x20b
cmp word [ecx + 0x18], ax
jne 0x407e46
mov eax, dword [ecx + 0xa8]
mov ecx, dword [ecx + 0xac]
lea edx, [ecx + eax]
add ebx, 0x58
cmp edx, esi
ja 0x407e48
cmp edx, eax
jb 0x407e48
test eax, eax
jne 0x407e28
test ecx, ecx
cmove eax, esi
dec eax
xor ecx, ecx
nop dword [eax + eax]
cmp eax, esi
jae 0x407e41
cmp byte [edi + eax], 0
jne 0x407e41
inc ecx
dec eax
cmp ecx, 8
jl 0x407e30
lea esi, [eax + 1]
jmp 0x407e48
xor ebx, ebx
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
movq qword [ebp - 0x20], xmm0
cmp esi, 8
jb 0x407ff1
lea ecx, [edi - 8]
add ecx, esi
cmp dword [ecx], 0x53575341
jne 0x408052
cmp dword [ecx + 4], 0x42326769
jne 0x407ead
cmp esi, 0x48
jb 0x40800e
push dword [ebp - 0x30]
lea eax, [ecx - 0x40]
mov dword [ebp - 0x20], 0
push ecx
push eax
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x1c], 0
sub esi, 0x48
mov dword [ebp - 0x18], 0
call fcn.00407980
jmp 0x407f15
cmp dword [ecx], 0x53575341
jne 0x408052
cmp dword [ecx + 4], 0x41326769
jne 0x408052
cmp esi, 0x90
jb 0x408035
cmp dword [ecx - 0x88], 0x53575341
jne 0x408035
cmp dword [ecx - 0x84], 0x41326769
jne 0x408035
lea eax, [ecx - 0x80]
mov dword [ebp - 0x30], 0x80
mov dword [ebp - 0x34], eax
sub esi, 0x90
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.0040d050
add esp, 8
push ebx
push esi
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 1
xorps xmm0, xmm0
mov dword [ebp - 0x24], 0
push edi
push eax
movq qword [ebp - 0x2c], xmm0
call fcn.00407ad0
add esp, 0x10
push dword [ebp + 0x10]
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00408070
mov ecx, dword [ebp - 0x2c]
add esp, 0xc
mov bl, al
test ecx, ecx
je 0x407f99
mov edx, dword [ebp - 0x24]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x407f7a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40802b
push edx
push ecx
call fcn.004103cf
add esp, 8
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x407fc9
mov edx, dword [ebp - 0x18]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x407fbf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x408030
push edx
push ecx
call fcn.004103cf
add esp, 8
mov al, bl
jmp 0x407fd5
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0041038e
mov esp, ebp
pop ebp
ret
push 0x4237e0
push 0xd
lea ecx, [ebp - 0x44]
call fcn.004075c0
push 0x42a04c
lea eax, [ebp - 0x44]
push eax
call fcn.0041180a
push 0x4237e0
push 0xd
lea ecx, [ebp - 0x54]
call fcn.004075c0
push 0x42a04c
lea eax, [ebp - 0x54]
push eax
call fcn.0041180a
call fcn.00413e20
call fcn.00413e20
push 0x4237e0
push 0xd
lea ecx, [ebp - 0x64]
call fcn.004075c0
push 0x42a04c
lea eax, [ebp - 0x64]
push eax
call fcn.0041180a
push 0x4237e0
push 0xd
lea ecx, [ebp - 0x74]
call fcn.004075c0
push 0x42a04c
lea eax, [ebp - 0x74]
push eax
call fcn.0041180a
int3