Function at 0x549df4
Capabilities:
Access peb ldr_data
Check os version

Disassembly:
push ebp
mov ebp, esp
push 0
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
add edi, 0xffffffec
xor eax, eax
push ebp
push 0x54a4ba
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
xor edx, edx
mov eax, 0x54a4d0
call fcn.00549dc0
pop ecx
mov edx, dword [edi]
mov dword [edx + 0x80], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
xor ecx, ecx
mov edx, 0x54a4e4
call fcn.00546208
mov ebx, eax
mov eax, dword [edi]
mov dword [eax + 0x54], ebx
push 1
push 0xffffffffffffffff
mov ecx, ebx
mov eax, dword [edi]
mov edx, 0x54a4f8
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x58], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
mov ecx, dword [eax + 0x54]
mov eax, dword [edi]
mov edx, 0x54a510
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x5c], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
mov ecx, dword [eax + 0x54]
mov eax, dword [edi]
mov edx, 0x54a528
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x60], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
mov ecx, 0x11
mov edx, 0x54a540
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x70], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
mov ecx, 2
mov edx, 0x54a550
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x78], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
mov ecx, 0xd
mov edx, 0x54a560
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x74], eax
push ebp
mov edx, 0x44000000
mov eax, 0x54a570
call fcn.00549dc0
pop ecx
mov edx, dword [edi]
mov dword [edx + 0xa0], eax
push ebp
mov edx, 0x99000000
mov eax, 0x54a580
call fcn.00549dc0
pop ecx
mov edx, dword [edi]
mov dword [edx + 0xa4], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
xor ecx, ecx
mov edx, 0x54a590
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x84], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
xor ecx, ecx
mov edx, 0x54a5a0
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x64], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
xor ecx, ecx
mov edx, 0x54a5b0
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x68], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
xor ecx, ecx
mov edx, 0x54a5c0
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x6c], eax
xor ebx, ebx
mov esi, dword [0x586730]
push 1
push 0xffffffffffffffff
mov edx, dword [esi]
lea eax, [ebp - 4]
mov ecx, 0x54a5d0
call fcn.00404ea0
mov edx, dword [ebp - 4]
mov eax, dword [edi]
xor ecx, ecx
call fcn.00546208
xor edx, edx
mov dl, bl
mov ecx, dword [edi]
mov dword [ecx + edx*4 + 0x284], eax
push ebp
xor edx, edx
mov eax, 0x54a5e4
call fcn.00549dc0
pop ecx
push eax
xor eax, eax
mov al, bl
mov edx, dword [edi]
lea eax, [edx + eax*4 + 0x268]
mov ecx, 1
mov edx, dword [0x466c98]
call fcn.00406378
add esp, 4
inc ebx
add esi, 4
cmp bl, 5
jne 0x549f71
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
xor ecx, ecx
mov edx, 0x54a5fc
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x3c], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
or ecx, 0xffffffff
mov edx, 0x54a614
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x38], eax
push ebp
xor edx, edx
mov eax, 0x54a628
call fcn.00549dc0
pop ecx
mov edx, dword [edi]
mov dword [edx + 0x7c], eax
push 1
push 0xffffffffffffffff
mov eax, dword [edi]
xor ecx, ecx
mov edx, 0x54a644
call fcn.00546208
mov edx, dword [edi]
mov dword [edx + 0x94], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a658
call fcn.00549dc0
pop ecx
mov edx, dword [edi]
mov dword [edx + 0x98], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a670
call fcn.00549dc0
pop ecx
mov ebx, eax
mov eax, dword [edi]
mov dword [eax + 0x90], ebx
cmp ebx, 0xffffffff
je 0x54a07d
mov edx, ebx
mov eax, dword [edi]
mov eax, dword [eax + 0x14]
or ecx, 0xffffffff
call fcn.005445c0
mov edx, dword [edi]
mov dword [edx + 0x90], eax
push ebp
mov edx, 2
mov eax, 0x54a688
call fcn.00549dc0
pop ecx
mov edx, dword [edi]
mov dword [edx + 0x88], eax
mov eax, dword [edi]
cmp dword [eax + 0x88], 1
jne 0x54a0b8
mov eax, dword [edi]
cmp dword [eax + 0x20], 0x8f
jle 0x54a0b8
mov eax, dword [edi]
mov dword [eax + 0x88], 2
push ebp
mov edx, 1
mov eax, 0x54a69c
call fcn.00549dc0
pop ecx
mov edx, dword [edi]
mov dword [edx + 0x8c], eax
push 2
mov eax, dword [edi]
add eax, 0x528
mov ecx, 1
mov edx, dword [0x511b20]
call fcn.00406378
add esp, 4
mov eax, dword [edi]
mov eax, dword [eax + 0x528]
lea esi, [eax + 0x44]
mov dword [esi + 4], 0xff00ff
push ebp
or edx, 0xffffffff
mov eax, 0x54a6b4
call fcn.00549dc0
pop ecx
mov dword [esi + 0x20], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a6c8
call fcn.00549dc0
pop ecx
mov dword [esi + 0x28], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a6dc
call fcn.00549dc0
pop ecx
mov dword [esi + 0x24], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a6f0
call fcn.00549dc0
pop ecx
mov dword [esi + 0x2c], eax
mov eax, dword [edi]
mov ebx, dword [eax + 0x14]
push ebp
mov edx, 3
mov eax, 0x54a704
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x10], eax
push ebp
mov edx, 3
mov eax, 0x54a718
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x18], eax
push ebp
mov edx, 2
mov eax, 0x54a72c
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x14], eax
push ebp
mov edx, 5
mov eax, 0x54a740
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x1c], eax
push ebp
mov edx, 9
mov eax, 0x54a754
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x34], eax
push ebp
mov edx, 5
mov eax, 0x54a76c
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x30], eax
push ebp
xor edx, edx
mov eax, 0x54a780
call fcn.00549dc0
pop ecx
mov dword [esi], eax
push ebp
mov edx, 0x3c
mov eax, 0x54a794
call fcn.00549dc0
pop ecx
mov dword [esi + 0x40], eax
push ebp
mov edx, 2
mov eax, 0x54a7a8
call fcn.00549dc0
pop ecx
mov dword [esi + 0x3c], eax
mov eax, dword [ebp + 8]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x528]
add eax, 0x44
mov edx, 0x54a7bc
call fcn.00549068
pop ecx
mov eax, dword [edi]
mov ebx, dword [eax + 0x14]
mov edx, dword [esi + 0x20]
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x20], eax
mov edx, dword [esi + 0x28]
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0x24]
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x24], eax
mov edx, dword [esi + 0x2c]
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x2c], eax
mov eax, dword [edi]
mov esi, dword [eax + 0x528]
push ebp
mov edx, 0xffffff
mov eax, 0x54a7cc
call fcn.00549dc0
pop ecx
xor edx, edx
call fcn.00517808
mov dword [esi], eax
push ebp
mov edx, 0xffffff
mov eax, 0x54a7e0
call fcn.00549dc0
pop ecx
xor edx, edx
call fcn.00517808
mov dword [esi + 8], eax
push ebp
xor edx, edx
mov eax, 0x54a7f4
call fcn.00549dc0
pop ecx
xor edx, edx
call fcn.00517808
mov dword [esi + 4], eax
push ebp
mov edx, 0xffffff
mov eax, 0x54a808
call fcn.00549dc0
pop ecx
xor edx, edx
call fcn.00517808
mov dword [esi + 0xc], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a81c
call fcn.00549dc0
pop ecx
mov dword [esi + 0x20], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a830
call fcn.00549dc0
pop ecx
mov dword [esi + 0x28], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a844
call fcn.00549dc0
pop ecx
mov dword [esi + 0x24], eax
push ebp
or edx, 0xffffffff
mov eax, 0x54a858
call fcn.00549dc0
pop ecx
mov dword [esi + 0x2c], eax
mov eax, dword [edi]
mov ebx, dword [eax + 0x14]
push ebp
mov edx, 2
mov eax, 0x54a86c
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x10], eax
push ebp
mov edx, 2
mov eax, 0x54a880
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x18], eax
push ebp
mov edx, 2
mov eax, 0x54a894
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x14], eax
push ebp
mov edx, 4
mov eax, 0x54a8a8
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x1c], eax
push ebp
mov edx, 9
mov eax, 0x54a8bc
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x34], eax
push ebp
mov edx, 5
mov eax, 0x54a8d4
call fcn.00549dc0
pop ecx
mov edx, eax
or ecx, 0xffffffff
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x30], eax
push ebp
mov edx, 2
mov eax, 0x54a8e8
call fcn.00549dc0
pop ecx
mov dword [esi + 0x3c], eax
push ebp
mov edx, 0xc8
mov eax, 0x54a8fc
call fcn.00549dc0
pop ecx
mov dword [esi + 0x40], eax
mov eax, dword [ebp + 8]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x528]
mov edx, 0x54a910
call fcn.00549068
pop ecx
mov eax, dword [edi]
mov ebx, dword [eax + 0x14]
or ecx, 0xffffffff
mov edx, dword [esi + 0x20]
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x20], eax
or ecx, 0xffffffff
mov edx, dword [esi + 0x28]
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x28], eax
or ecx, 0xffffffff
mov edx, dword [esi + 0x24]
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x24], eax
or ecx, 0xffffffff
mov edx, dword [esi + 0x2c]
mov eax, ebx
call fcn.005445c0
mov dword [esi + 0x2c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x54a4c1
lea eax, [ebp - 4]
call fcn.00404b94
ret