Function at 0x4a6320
Capabilities:
Access peb ldr_data
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53675c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x78
mov eax, ecx
xorps xmm0, xmm0
lea ecx, [eax + 0xc]
mov dword [ebp - 0x68], eax
movups xmmword [ecx], xmm0
push esi
xor edx, edx
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push edi
mov word [ecx], dx
mov dword [ebp - 4], edx
movups xmmword [eax + 0x30], xmm0
mov dword [eax + 0x40], edx
mov dword [eax + 0x44], 7
mov word [eax + 0x30], dx
movups xmmword [eax + 0x48], xmm0
mov dword [eax + 0x58], edx
mov dword [eax + 0x5c], 7
mov word [eax + 0x48], dx
movups xmmword [eax + 0x60], xmm0
mov dword [eax + 0x70], edx
mov dword [eax + 0x74], 0xf
mov byte [eax + 0x60], dl
movups xmmword [eax + 0x78], xmm0
mov dword [eax + 0x88], edx
mov dword [eax + 0x8c], 0xf
mov byte [eax + 0x78], dl
push 0x6f
push 0x54e550
mov byte [ebp - 4], 4
call fcn.0048f140
cmp byte [0x565648], 0
jne 0x4a6c63
xorps xmm0, xmm0
mov dword [ebp - 0x64], 0xfafff9f8
mov dword [ebp - 0x60], 0x98e5e0e7
xor ecx, ecx
mov word [ebp - 0x5c], 0xd4d3
mov byte [ebp - 0x5a], 0xd5
movups xmmword [ebp - 0x59], xmm0
mov dword [ebp - 0x49], 0
mov word [ebp - 0x45], 0
mov byte [ebp - 0x43], 0
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x64], al
inc ecx
cmp ecx, 0xb
jb 0x4a6410
mov dword [0x565530], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x64]
mov byte [ebp - 0x59], 0
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x70], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x6c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6442
sub ecx, edx
lea eax, [ebp - 0x64]
push ecx
push eax
lea ecx, [ebp - 0x80]
call fcn.00402c40
cmp dword [ebp - 0x6c], 0x10
lea eax, [ebp - 0x80]
cmovae eax, dword [ebp - 0x80]
push eax
call dword [0x538060]
mov ecx, dword [ebp - 0x6c]
mov edi, eax
cmp ecx, 0x10
jb 0x4a64a0
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6496
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c79
push ecx
push edx
call fcn.00504f31
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
xor ecx, ecx
mov byte [ebp - 0x80], 0
mov dword [ebp - 0x35], 0xfadfd9f8
mov dword [ebp - 0x31], 0xf5c5c0c7
mov dword [ebp - 0x2d], 0xdfd7d6d8
mov word [ebp - 0x29], 0xc8d8
movups xmmword [ebp - 0x27], xmm0
mov dword [ebp - 0x17], 0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 0xe
jb 0x4a64e7
mov dword [0x565524], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x35]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6520
sub ecx, edx
lea eax, [ebp - 0x35]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
mov esi, dword [0x5380d4]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f68], eax
cmp ecx, 0x10
jb 0x4a6584
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a657a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c7e
push ecx
push edx
call fcn.00504f31
add esp, 8
movaps xmm0, xmmword [0x5520d0]
xor ecx, ecx
movups xmmword [ebp - 0x3a], xmm0
mov word [ebp - 0x2a], 0xb2da
xorps xmm0, xmm0
mov byte [ebp - 0x28], 0xb2
movups xmmword [ebp - 0x27], xmm0
mov dword [ebp - 0x17], 0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x3a], al
inc ecx
cmp ecx, 0x13
jb 0x4a65b3
mov dword [0x5655a8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x3a]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a65e5
sub ecx, edx
lea eax, [ebp - 0x3a]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f6c], eax
cmp ecx, 0x10
jb 0x4a6643
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6639
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c83
push ecx
push edx
call fcn.00504f31
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x32], 0xfadfd9f8
mov dword [ebp - 0x2e], 0xf9c5c0c7
xor ecx, ecx
mov word [ebp - 0x2a], 0xddc7
mov byte [ebp - 0x28], 0xd7
movups xmmword [ebp - 0x27], xmm0
mov dword [ebp - 0x17], 0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x32], al
inc ecx
cmp ecx, 0xb
jb 0x4a6675
mov dword [0x565530], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x32]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a66a7
sub ecx, edx
lea eax, [ebp - 0x32]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f54], eax
cmp ecx, 0x10
jb 0x4a6705
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a66fb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c88
push ecx
push edx
call fcn.00504f31
add esp, 8
movaps xmm0, xmmword [0x5520f0]
xor ecx, ecx
movups xmmword [ebp - 0x39], xmm0
mov word [ebp - 0x29], 0xb4cc
xorps xmm0, xmm0
mov dword [ebp - 0x17], 0
movups xmmword [ebp - 0x27], xmm0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x39], al
inc ecx
cmp ecx, 0x12
jb 0x4a6730
mov dword [0x5655dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x39]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6762
sub ecx, edx
lea eax, [ebp - 0x39]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f70], eax
cmp ecx, 0x10
jb 0x4a67c0
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a67b6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c8d
push ecx
push edx
call fcn.00504f31
add esp, 8
movaps xmm0, xmmword [0x5523b0]
xor ecx, ecx
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x30], 0xaba0b6fe
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0xaaa7a5af
mov byte [ebp - 0x28], 0xa2
movups xmmword [ebp - 0x27], xmm0
mov dword [ebp - 0x17], 0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x40], al
inc ecx
cmp ecx, 0x19
jb 0x4a67f7
mov dword [0x565638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x40]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6830
sub ecx, edx
lea eax, [ebp - 0x40]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f74], eax
cmp ecx, 0x10
jb 0x4a688e
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6884
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c92
push ecx
push edx
call fcn.00504f31
add esp, 8
movaps xmm0, xmmword [0x552100]
xor ecx, ecx
movups xmmword [ebp - 0x39], xmm0
mov word [ebp - 0x29], 0xb4cc
xorps xmm0, xmm0
mov dword [ebp - 0x17], 0
movups xmmword [ebp - 0x27], xmm0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
nop dword [eax]
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x39], al
inc ecx
cmp ecx, 0x12
jb 0x4a68c0
mov dword [0x5655dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x39]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a68f2
sub ecx, edx
lea eax, [ebp - 0x39]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f50], eax
cmp ecx, 0x10
jb 0x4a6950
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6946
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c97
push ecx
push edx
call fcn.00504f31
add esp, 8
movaps xmm0, xmmword [0x5522d0]
xor ecx, ecx
movups xmmword [ebp - 0x3d], xmm0
mov dword [ebp - 0x2d], 0xacaeb0cc
xorps xmm0, xmm0
mov word [ebp - 0x29], 0xa1b0
movups xmmword [ebp - 0x27], xmm0
mov dword [ebp - 0x17], 0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x3d], al
inc ecx
cmp ecx, 0x16
jb 0x4a6982
mov dword [0x565574], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x3d]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a69b4
sub ecx, edx
lea eax, [ebp - 0x3d]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f60], eax
cmp ecx, 0x10
jb 0x4a6a12
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6a08
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6c9c
push ecx
push edx
call fcn.00504f31
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x36], 0xfadfd9f8
mov dword [ebp - 0x32], 0xe4c5c0c7
xor ecx, ecx
mov dword [ebp - 0x2e], 0xfeddd9d2
mov word [ebp - 0x2a], 0xc8da
mov byte [ebp - 0x28], 0xdc
movups xmmword [ebp - 0x27], xmm0
mov dword [ebp - 0x17], 0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
nop dword [eax + eax]
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 0xf
jb 0x4a6a50
mov dword [0x565558], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x36]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6a82
sub ecx, edx
lea eax, [ebp - 0x36]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f64], eax
cmp ecx, 0x10
jb 0x4a6ae0
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6ad6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6ca1
push ecx
push edx
call fcn.00504f31
add esp, 8
movaps xmm0, xmmword [0x552080]
xor ecx, ecx
movups xmmword [ebp - 0x39], xmm0
mov word [ebp - 0x29], 0xa5d3
xorps xmm0, xmm0
mov dword [ebp - 0x17], 0
movups xmmword [ebp - 0x27], xmm0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
nop dword [eax + eax]
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x39], al
inc ecx
cmp ecx, 0x12
jb 0x4a6b10
mov dword [0x5655dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x39]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6b42
sub ecx, edx
lea eax, [ebp - 0x39]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f5c], eax
cmp ecx, 0x10
jb 0x4a6ba0
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6b96
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6ca6
push ecx
push edx
call fcn.00504f31
add esp, 8
movaps xmm0, xmmword [0x551950]
xor ecx, ecx
movups xmmword [ebp - 0x39], xmm0
mov word [ebp - 0x29], 0xb3cb
xorps xmm0, xmm0
mov dword [ebp - 0x17], 0
movups xmmword [ebp - 0x27], xmm0
mov word [ebp - 0x13], 0
mov byte [ebp - 0x11], 0
nop dword [eax + eax]
lea eax, [ecx - 0x51]
xor byte [ebp + ecx - 0x39], al
inc ecx
cmp ecx, 0x12
jb 0x4a6bd0
mov dword [0x5655dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x39]
mov byte [ebp - 0x27], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x48], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6c02
sub ecx, edx
lea eax, [ebp - 0x39]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402c40
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push edi
call esi
mov ecx, dword [ebp - 0x48]
mov dword [0x564f58], eax
cmp ecx, 0x10
jb 0x4a6c5c
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4a6c52
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a6cab
push ecx
push edx
call fcn.00504f31
add esp, 8
mov byte [0x565648], 1
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
call fcn.0050a1d0
int3