Function at 0x413d4b
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18c
mov eax, dword [0x46b008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x44]
push esi
push edi
xor esi, esi
push 0x40
push esi
push eax
mov dword [ebp - 0x168], esi
mov dword [ebp - 0x184], esi
mov dword [ebp - 0x180], esi
call 0x437f10
push 0xf8
lea eax, [ebp - 0x13c]
push esi
push eax
call 0x437f10
add esp, 0x18
mov dword [ebp - 0x174], esi
xor eax, eax
mov dword [ebp - 0x178], esi
lea edi, [ebp - 0x164]
mov dword [ebp - 0x16c], esi
push 0xa
pop ecx
rep stosd dword es:[edi], eax
mov ecx, dword [ebp + 0xc]
mov dword [ebx], ecx
cmp ecx, 0xffffffff
jne 0x413df8
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x413dd9
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x413de0
mov esi, 0x80004005
push esi
push 0x3a
push 0x44efac
call fcn.0040c0f5
push 0x44efe0
push esi
jmp 0x4144b1
mov eax, dword [ebp + 0x10]
cmp eax, 0xffffffff
jne 0x413e02
mov eax, ecx
mov edi, dword [0x44b200]
push esi
push esi
push esi
push esi
push ecx
mov dword [ebx + 4], eax
call edi
test eax, eax
jne 0x413e48
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x413e2d
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x413e34
mov esi, 0x80004005
push esi
push 0x43
push 0x44efac
call fcn.0040c0f5
push 0x44f010
jmp 0x413df2
push esi
mov esi, dword [0x44b1fc]
lea eax, [ebp - 0x168]
push eax
push 0x40
lea eax, [ebp - 0x44]
push eax
push dword [ebx]
call esi
test eax, eax
jne 0x413e99
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x413e7b
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x413e82
mov esi, 0x80004005
push esi
push 0x49
push 0x44efac
call fcn.0040c0f5
push 0x44f034
jmp 0x413df2
cmp dword [ebp - 0x168], 0x40
jb 0x414497
mov eax, 0x5a4d
cmp ax, word [ebp - 0x44]
jne 0x414497
mov eax, dword [ebp - 8]
push 0
push 0
cdq
push edx
push eax
push dword [ebx]
call edi
test eax, eax
jne 0x413efc
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x413ede
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x413ee5
mov esi, 0x80004005
push esi
push 0x59
push 0x44efac
call fcn.0040c0f5
push 0x44f084
jmp 0x413df2
push 0
lea eax, [ebp - 0x168]
push eax
push 0x18
lea eax, [ebp - 0x13c]
push eax
push dword [ebx]
call esi
test eax, eax
jne 0x413f4b
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x413f2d
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x413f34
mov esi, 0x80004005
push esi
push 0x5f
push 0x44efac
call fcn.0040c0f5
push 0x44f0a4
jmp 0x413df2
cmp dword [ebp - 0x168], 0x18
jb 0x41447c
cmp dword [ebp - 0x13c], 0x4550
jne 0x41447c
mov eax, dword [ebp - 8]
lea ecx, [eax + 0x58]
add eax, 0x98
mov dword [ebp - 0x188], ecx
xor ecx, ecx
push ecx
push ecx
push ecx
push eax
push dword [ebx]
mov dword [ebp - 0x18c], eax
call edi
test eax, eax
jne 0x413fc2
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x413fa4
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x413fab
mov esi, 0x80004005
push esi
push 0x6f
push 0x44efac
call fcn.0040c0f5
push 0x44f0f0
jmp 0x413df2
push 0
lea eax, [ebp - 0x168]
push eax
push 4
lea eax, [ebp - 0x174]
push eax
push dword [ebx]
call esi
test eax, eax
jne 0x414011
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x413ff3
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x413ffa
mov esi, 0x80004005
push esi
push 0x74
push 0x44efac
call fcn.0040c0f5
push 0x44f110
jmp 0x413df2
push 0
lea eax, [ebp - 0x168]
push eax
push 4
lea eax, [ebp - 0x178]
push eax
push dword [ebx]
call esi
test eax, eax
jne 0x414060
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x414042
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x414049
mov esi, 0x80004005
push esi
push 0x79
push 0x44efac
call fcn.0040c0f5
push 0x44f134
jmp 0x413df2
movzx ecx, word [ebp - 0x128]
mov eax, dword [ebp - 8]
add ecx, 0x18
add eax, ecx
xor ecx, ecx
push ecx
push ecx
push ecx
push eax
push dword [ebx]
call edi
test eax, eax
jne 0x4140b5
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x414094
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x41409b
mov esi, 0x80004005
push esi
push 0x84
push 0x44efac
call fcn.0040c0f5
push 0x44f154
jmp 0x413df2
xor edi, edi
lea eax, [ebp - 0x168]
push edi
push eax
push 0x28
lea eax, [ebp - 0x164]
mov dword [ebp - 0x17c], edi
push eax
push dword [ebx]
call esi
test eax, eax
je 0x41443d
xor ecx, ecx
inc ecx
cmp dword [ebp - 0x168], 0x28
jb 0x414418
lea eax, [ebp - 0x164]
cmp dword [eax], 0x7869772e
jne 0x414101
cmp dword [eax + 4], 0x6e727562
je 0x414144
movzx eax, word [ebp - 0x136]
cmp ecx, eax
jae 0x4143db
push 0
lea eax, [ebp - 0x168]
inc edi
push eax
push 0x28
lea eax, [ebp - 0x164]
mov dword [ebp - 0x17c], edi
push eax
push dword [ebx]
inc ecx
mov dword [ebp - 0x170], ecx
call esi
test eax, eax
je 0x41443d
mov ecx, dword [ebp - 0x170]
jmp 0x4140dd
cmp dword [ebp - 0x154], 0x34
jae 0x414174
mov edi, 0x8007000d
push edi
push 0xac
push 0x44efac
mov esi, edi
call fcn.0040c0f5
push dword [ebp - 0x154]
push 0x44f210
jmp 0x41443a
push 1
push dword [ebp - 0x154]
call fcn.0040c21a
mov edi, eax
mov dword [ebp - 0x16c], edi
test edi, edi
jne 0x4141af
mov ebx, 0x8007000e
push ebx
push 0xb1
push 0x44efac
mov esi, ebx
call fcn.0040c0f5
push 0x44f240
push ebx
jmp 0x4144b1
xor eax, eax
push eax
push eax
push eax
push dword [ebp - 0x150]
push dword [ebx]
call dword [0x44b200]
test eax, eax
jne 0x414204
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x4141dd
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x4141e4
mov esi, 0x80004005
push esi
push 0xb7
push 0x44efac
call fcn.0040c0f5
push 0x44f0f0
push esi
call 0x448e57
jmp 0x414403
mov eax, dword [ebp - 0x150]
add eax, 0x1c
push 0
mov dword [ebp - 0x170], eax
lea eax, [ebp - 0x168]
push eax
push dword [ebp - 0x154]
push edi
push dword [ebx]
call esi
test eax, eax
jne 0x414260
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x414242
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x414249
mov esi, 0x80004005
push esi
push 0xc0
push 0x44efac
call fcn.0040c0f5
push 0x44f26c
jmp 0x4141f9
mov eax, dword [ebp - 0x154]
cmp eax, dword [ebp - 0x168]
jbe 0x41428f
mov edi, 0x8007000d
push edi
push 0xc5
push 0x44efac
mov esi, edi
call fcn.0040c0f5
push 0x44f28c
jmp 0x4143f7
cmp dword [edi + 4], 2
je 0x4142ce
mov edi, 0x8007000d
push edi
push 0xcc
push 0x44efac
mov esi, edi
call fcn.0040c0f5
mov eax, dword [ebp - 0x16c]
push dword [eax + 4]
push 0x44f2b4
push edi
call 0x448e57
mov edi, dword [ebp - 0x16c]
add esp, 0xc
jmp 0x414405
lea eax, [ebp - 0x184]
push eax
push dword [ebx + 4]
call 0x44d63d
mov esi, eax
test esi, esi
jns 0x4142ed
push 0x44f2ec
jmp 0x4141f9
mov edx, dword [edi + 0x18]
mov dword [ebx + 8], edx
cmp dword [edi + 0x20], 0
je 0x414301
mov eax, dword [edi + 0x24]
add eax, dword [edi + 0x20]
jmp 0x41431a
mov ecx, dword [ebp - 0x174]
test ecx, ecx
je 0x414315
mov eax, dword [ebp - 0x178]
add eax, ecx
jmp 0x41431a
mov eax, dword [edi + 0x30]
add eax, edx
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x184]
mov dword [ebx + 0x10], eax
mov eax, dword [ebp - 0x180]
mov dword [ebx + 0x14], eax
mov eax, dword [ebp - 0x188]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp - 0x170]
mov dword [ebx + 0x20], eax
mov eax, dword [edi + 0x1c]
mov dword [ebx + 0x24], eax
mov eax, dword [edi + 0x20]
mov dword [ebx + 0x28], eax
mov eax, dword [edi + 0x24]
mov dword [ebx + 0x2c], eax
mov eax, dword [edi + 0x28]
mov dword [ebx + 0x30], eax
mov eax, dword [edi + 0x2c]
mov dword [ebx + 0x34], eax
push 1
shl eax, 2
push eax
call fcn.0040c21a
mov ecx, eax
mov dword [ebx + 0x38], ecx
test ecx, ecx
jne 0x41439e
mov ebx, 0x8007000e
push ebx
push 0xef
push 0x44efac
mov esi, ebx
call fcn.0040c0f5
push 0x44f310
push ebx
jmp 0x4141fa
mov eax, dword [ebx + 0x34]
shl eax, 2
push eax
lea eax, [edi + 0x30]
push eax
push ecx
call 0x437410
add esp, 0xc
lea eax, [edi + 8]
push eax
call fcn.00413ac8
mov esi, eax
test esi, esi
jns 0x414405
push esi
push 0xf5
push 0x44efac
call fcn.0040c0f5
push 0x44f340
jmp 0x4141f9
mov edi, 0x8007000d
push edi
push 0xa0
push 0x44efac
mov esi, edi
call fcn.0040c0f5
push 0x44f1f0
push edi
call 0x448e57
mov edi, dword [ebp - 0x16c]
pop ecx
pop ecx
test edi, edi
je 0x4144b8
push edi
call fcn.0040c2df
jmp 0x4144b8
mov edi, 0x8007000d
push edi
push 0x92
push 0x44efac
mov esi, edi
call fcn.0040c0f5
push dword [ebp - 0x17c]
push 0x44f1ac
push edi
jmp 0x414472
call dword [0x44b0e8]
mov esi, eax
test esi, esi
jle 0x414454
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x41445b
mov esi, 0x80004005
push esi
push 0x8d
push 0x44efac
call fcn.0040c0f5
push edi
push 0x44f17c
push esi
call 0x448e57
add esp, 0xc
jmp 0x4144b8
mov edi, 0x8007000d
push edi
push 0x64
push 0x44efac
mov esi, edi
call fcn.0040c0f5
push 0x44f0c0
jmp 0x4144b0
mov edi, 0x8007000d
push edi
push 0x4e
push 0x44efac
mov esi, edi
call fcn.0040c0f5
push 0x44f050
push edi
call 0x448e57
pop ecx
pop ecx
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call 0x436630
leave
ret 0xc