Function at 0x144c81c
Capabilities:
Access peb ldr_data
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov edx, 0x4294c0
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov al, byte [edx]
test al, al
je 0x144c846
sub eax, 0x30
cmp al, 9
jbe 0x144c843
add dword [0x4281e8], 0x2e9b95ef
jmp 0x144c846
inc edx
jmp 0x144c82a
and dword [0x4281e8], 0x9de6ac0a
call dword [0x42e098]
mov edx, 0x4295c0
mov ecx, 0x2352
movzx eax, byte [edx]
inc edx
test al, al
je 0x144c88d
add ecx, eax
cmp ecx, 0x2045
jbe 0x144c860
mov dword [esp], 0x4295c0
call fcn.0144f344
imul eax, dword [0x4281e8], 0xaa78f998
mov dword [0x4281e8], eax
mov eax, dword [0x4281e8]
mov ebx, 0x9ad
xor eax, 0x677b187b
sub eax, 0x3d8006d0
mov dword [0x4281e8], eax
call dword [0x42e094]
mov ecx, 0x42dec0
imul edx, dword [0x4281e8], 0x10e782da
mov dword [0x4281e8], edx
movzx eax, word [ecx]
add ecx, 2
test ax, ax
je 0x144c8e2
add ebx, eax
cmp ebx, 0x1332
jbe 0x144c8c1
add edx, 0x2bcb003
mov dword [0x4281e8], edx
imul eax, dword [0x4281e8], 0x9fef17fc
mov dword [0x4281e8], eax
call fcn.01450868
imul eax, dword [0x4281e8], 0xfed7b73
mov dword [0x4281e8], eax
call dword [0x42e0bc]
mov eax, dword [0x4281e8]
and eax, 0x69582888
xor eax, 0xa6ceb652
cmp dword [0x426de0], 0
mov dword [0x4281e8], eax
je 0x144c98a
mov ecx, 0x42d520
mov ebx, 0xb8d
movzx edx, word [ecx]
add ecx, 2
test dx, dx
je 0x144c951
add ebx, edx
cmp ebx, 0xe11
jbe 0x144c932
add eax, 0x40fec60f
mov dword [0x4281e8], eax
mov eax, dword [0x4281e8]
mov dword [esp + 0xc], 0x4295c0
mov dword [esp + 4], 0x42d520
add eax, 0x2758636a
mov dword [esp], 0x42dec0
mov dword [esp + 8], eax
mov dword [0x4281e8], eax
call fcn.01452304
mov eax, 1
jmp 0x144ce0c
mov eax, dword fs:[0x30]
mov ebx, dword [eax + 0xc]
xor esi, esi
call dword [0x42e0cc]
imul eax, dword [0x4281e8], 0x882ef5cc
mov edi, dword [ebx + 0xc]
xor ebx, ebx
sub eax, 0xda101a5
mov dword [0x4281e8], eax
xor eax, eax
cmp dword [edi + 0x18], 0
je 0x144cb04
cmp byte [eax + 0x428e80], 0
je 0x144c9f7
inc eax
cmp eax, 0x1310
jne 0x144c9c0
mov eax, dword [0x4281e8]
mov dword [esp + 4], 0x428e80
mov dword [esp], eax
call fcn.01452b8c
imul eax, dword [0x4281e8], 0x65894e2a
mov dword [0x4281e8], eax
jmp 0x144ca04
mov edx, dword [0x4281e8]
cmp eax, 0xca9
jle 0x144ca15
imul eax, dword [0x4281e8], 0xa8e3faf2
mov dword [0x4281e8], eax
jmp 0x144ca26
lea eax, [edx - 0x242b050d]
mov dword [0x4281e8], eax
call dword [0x42e098]
mov eax, dword [0x4281e8]
xor eax, 0x53b3903e
sub eax, 0x7d90b806
mov dword [0x4281e8], eax
xor eax, eax
cmp word [eax + 0x42dec0], 0
je 0x144ca64
add eax, 2
cmp eax, 0x2456
jne 0x144ca3c
call fcn.0144ebd4
imul eax, dword [0x4281e8], 0xaa86cd13
mov dword [0x4281e8], eax
imul eax, dword [0x4281e8], 0xf7f25ebc
mov ebx, dword [edi + 0x18]
mov ecx, dword [ebx + 0x3c]
and eax, 0x849f17ec
mov dword [0x4281e8], eax
add ecx, ebx
mov dword [ebp - 0x3c], ecx
mov ecx, 0x4295c0
mov dl, byte [ecx]
test dl, dl
je 0x144caa5
sub edx, 0x30
cmp dl, 9
jbe 0x144caa2
sub eax, 0x158293d8
mov dword [0x4281e8], eax
jmp 0x144caa5
inc ecx
jmp 0x144ca88
mov eax, dword [0x4281e8]
mov dword [esp], 0x4294c0
or eax, 0xcb3e85fe
mov dword [esp + 4], eax
mov dword [0x4281e8], eax
call fcn.01450d34
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x78]
test eax, eax
je 0x144cafd
and dword [0x4281e8], 0x7070b0b6
lea esi, [ebx + eax]
mov edx, dword [esi + 0xc]
add edx, ebx
mov eax, dword [edx]
or eax, 0x20202020
cmp eax, 0x6c64746e
jne 0x144cafd
mov eax, dword [edx + 4]
or eax, 0x20202020
cmp eax, 0x6c642e6c
je 0x144cb0c
mov edi, dword [edi]
jmp 0x144c9b4
test esi, esi
je 0x144ce0c
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x1c]
mov dword [0x429824], ebx
mov edi, dword [esi + 0x18]
add eax, ebx
add edx, ebx
mov dword [ebp - 0x3c], eax
mov eax, dword [esi + 0x24]
xor esi, esi
add eax, ebx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x3c]
dec edi
mov eax, dword [ecx + edi*4]
mov ecx, dword [0x4281e8]
add eax, ebx
cmp word [eax], 0x775a
jne 0x144cbb3
xor ecx, 0x2b1918f6
mov dword [esp], eax
sub ecx, 0x240483ca
mov dword [ebp - 0x48], edx
xor ecx, 0x2b1918f6
sub ecx, 0x240483ca
xor ecx, 0x2b1918f6
sub ecx, 0x21f4438a
mov dword [0x4281e8], ecx
lea ecx, [esi*8 + 0x426de4]
mov dword [ebp - 0x44], ecx
call fcn.0144c61c
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
mov dword [esi*8 + 0x426de4], eax
mov eax, dword [ebp - 0x40]
inc esi
movzx eax, word [eax + edi*2]
mov eax, dword [edx + eax*4]
mov dword [ecx + 4], eax
imul eax, dword [0x4281e8], 0xbad8807f
mov dword [0x4281e8], eax
cmp esi, 0x226
je 0x144cbbb
test edi, edi
jne 0x144cb2c
xor edx, edx
mov dword [0x426de0], esi
mov dword [ebp - 0x40], edx
mov edi, dword [0x426de0]
mov eax, dword [0x4281e8]
lea edx, [edi - 1]
cmp dword [ebp - 0x40], edx
jae 0x144cdf8
imul eax, eax, 0x34bcbba5
add eax, 0x4df575c8
or eax, 0xb6f4f631
mov dword [0x4281e8], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x40]
mov edx, dword [0x4281e8]
not eax
add eax, dword [0x426de0]
cmp dword [ebp - 0x3c], eax
jae 0x144cdf0
mov dword [esp + 4], edx
mov dword [esp], 0x4295c0
call fcn.01450d34
xor dword [0x4281e8], 0x8a773b65
call dword [0x42e0cc]
mov ebx, eax
call fcn.01450914
xor ebx, 0xa81839c6
mov dword [esp + 4], 0x428e80
lea eax, [ebx + 0x7ff7acc6]
mov dword [esp], eax
mov dword [0x4281e8], eax
call fcn.01452b8c
mov eax, dword [0x4281e8]
mov dword [esp], eax
call fcn.0145282c
mov eax, dword [0x4281e8]
sub eax, 0x7363f032
imul edx, eax, 0x61b8ac3
cmp byte [0x4295c0], 0
mov dword [0x4281e8], edx
je 0x144cc90
imul eax, eax, 0x78d8a47
mov dword [0x4281e8], eax
mov eax, dword [0x4281e8]
mov dword [esp], 0x4294c0
add eax, 0x1c45e1e5
mov dword [esp + 4], eax
mov dword [0x4281e8], eax
call fcn.01450d34
mov eax, dword [0x4281e8]
mov edi, dword [ebp - 0x3c]
xor eax, 0x80538dc1
mov esi, dword [edi*8 + 0x426de8]
lea ebx, [edi + 1]
mov dword [0x4281e8], eax
cmp dword [edi*8 + 0x426df0], esi
jae 0x144cde8
lea edi, [ebp - 0x2c]
mov esi, 0x414134
mov ecx, 5
xor edx, edx
rep movsd dword es:[edi], dword [esi]
add eax, 0x5897de26
mov ecx, 0xd
or eax, 0xa837c4c
mov esi, ecx
sub esi, dword [ebp + edx*4 - 0x2c]
inc edx
imul eax, eax, 0xfd244e40
mov ecx, esi
or eax, 0x58e8a31a
xor eax, 0x8528364
cmp edx, 5
jne 0x144ccf3
mov dword [0x4281e8], eax
mov ecx, 0x4295c0
mov dl, byte [ecx]
test dl, dl
je 0x144cd3d
sub edx, 0x30
cmp dl, 9
jbe 0x144cd3a
and eax, 0xdb8b5705
mov dword [0x4281e8], eax
jmp 0x144cd3d
inc ecx
jmp 0x144cd20
mov eax, dword [0x4281e8]
mov dword [esp + 4], 0x428e80
mov dword [esp], 0x4294c0
or eax, 0x38f17aeb
mov dword [esp + 8], eax
mov dword [0x4281e8], eax
call fcn.0144dee0
and dword [0x4281e8], 0xc8bf8802
cmp byte [0x4295c0], 0
je 0x144cd92
mov dword [esp], 0x4295c0
call fcn.0144f344
imul eax, dword [0x4281e8], 0x906bb4e
mov dword [0x4281e8], eax
mov eax, dword [0x4281e8]
add eax, 0x5912c903
xor eax, 0x4ee10508
mov dword [0x4281e8], eax
call fcn.014532d0
mov ecx, dword [ebx*8 + 0x426de4]
mov edi, dword [ebp - 0x3c]
mov edx, dword [ebx*8 + 0x426ddc]
mov eax, dword [ebx*8 + 0x426de0]
mov dword [ebx*8 + 0x426ddc], ecx
mov ecx, dword [ebx*8 + 0x426de8]
add esi, edi
mov dword [ebx*8 + 0x426de4], edx
mov dword [ebx*8 + 0x426de0], ecx
mov dword [esi*8 + 0x426de8], eax
mov dword [ebp - 0x3c], ebx
jmp 0x144cbf7
inc dword [ebp - 0x40]
jmp 0x144cbc6
add eax, 0x1d66e4a1
and eax, 0xc6b611a6
mov dword [0x4281e8], eax
jmp 0x144c980
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret