Function at 0x48df50
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x526ee8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x154
mov al, 0xea
push ebx
mov ebx, 0xff
push ebp
mov dl, 0x7e
push esi
mov esi, ecx
mov cl, 0xc6
push edi
mov dword [esp + 0x120], esi
mov byte [esp + 0x18], bl
mov byte [esp + 0x19], bl
mov byte [esp + 0x1a], bl
mov byte [esp + 0x1b], bl
mov byte [esp + 0x1c], 0xfc
mov byte [esp + 0x1d], al
mov byte [esp + 0x1e], cl
mov byte [esp + 0x1f], 0xb4
mov byte [esp + 0x20], 0xb4
mov byte [esp + 0x21], 0xb4
mov byte [esp + 0x22], cl
mov byte [esp + 0x23], 0xfc
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], bl
mov byte [esp + 0x26], bl
mov byte [esp + 0x27], bl
mov byte [esp + 0x28], bl
mov byte [esp + 0x29], bl
mov byte [esp + 0x2a], bl
mov byte [esp + 0x2b], al
mov byte [esp + 0x2c], al
mov byte [esp + 0x2d], al
mov byte [esp + 0x2e], al
mov byte [esp + 0x2f], cl
mov byte [esp + 0x30], 0xb4
mov byte [esp + 0x31], 0x90
mov byte [esp + 0x32], dl
mov byte [esp + 0x33], dl
mov byte [esp + 0x34], cl
mov byte [esp + 0x35], bl
mov byte [esp + 0x36], bl
mov byte [esp + 0x37], bl
mov byte [esp + 0x38], bl
mov byte [esp + 0x39], bl
mov byte [esp + 0x3a], al
mov byte [esp + 0x3b], 0xfc
mov byte [esp + 0x3c], 0xfc
mov byte [esp + 0x3d], al
mov byte [esp + 0x3e], al
mov byte [esp + 0x3f], cl
mov byte [esp + 0x40], 0xb4
mov byte [esp + 0x41], 0x90
mov byte [esp + 0x42], dl
mov byte [esp + 0x43], 0x6c
mov byte [esp + 0x44], 0x5a
mov byte [esp + 0x45], 0x90
mov byte [esp + 0x46], bl
mov byte [esp + 0x47], bl
mov byte [esp + 0x48], bl
mov byte [esp + 0x49], al
mov byte [esp + 0x4a], 0xfc
mov byte [esp + 0x4b], 0xfc
mov byte [esp + 0x4c], 0xfc
mov byte [esp + 0x4d], al
mov byte [esp + 0x4e], al
mov byte [esp + 0x4f], cl
mov byte [esp + 0x50], 0xb4
mov byte [esp + 0x51], 0x90
mov byte [esp + 0x52], dl
mov byte [esp + 0x53], 0x6c
mov byte [esp + 0x54], 0x5a
mov byte [esp + 0x55], 0x36
mov byte [esp + 0x56], dl
mov byte [esp + 0x57], bl
mov byte [esp + 0x58], al
mov byte [esp + 0x59], 0xfc
mov byte [esp + 0x5a], 0xfc
mov byte [esp + 0x5b], 0xfc
mov byte [esp + 0x5c], 0xfc
mov byte [esp + 0x5d], al
mov byte [esp + 0x5e], al
mov byte [esp + 0x5f], cl
mov byte [esp + 0x60], 0xb4
mov byte [esp + 0x61], 0x90
mov byte [esp + 0x62], dl
mov byte [esp + 0x63], 0x6c
mov byte [esp + 0x64], 0x5a
mov byte [esp + 0x65], 0x36
mov byte [esp + 0x66], 0x24
mov byte [esp + 0x67], al
mov byte [esp + 0x68], al
mov byte [esp + 0x69], 0xfc
mov byte [esp + 0x6a], 0xfc
mov byte [esp + 0x6b], 0xfc
mov byte [esp + 0x6c], 0xfc
mov byte [esp + 0x6d], al
mov byte [esp + 0x6e], al
mov byte [esp + 0x6f], cl
mov byte [esp + 0x70], 0xb4
mov byte [esp + 0x71], 0x90
mov byte [esp + 0x72], dl
mov byte [esp + 0x73], 0x6c
mov byte [esp + 0x74], 0x48
mov byte [esp + 0x75], 0x36
mov byte [esp + 0x76], 0x24
mov byte [esp + 0x77], 0x5a
mov byte [esp + 0x78], al
mov byte [esp + 0x79], al
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], al
mov byte [esp + 0x7c], al
mov byte [esp + 0x7d], al
mov byte [esp + 0x7e], cl
mov byte [esp + 0x7f], 0xb4
mov byte [esp + 0x80], 0x90
mov byte [esp + 0x81], 0x90
mov byte [esp + 0x82], dl
mov byte [esp + 0x83], 0x6c
mov byte [esp + 0x84], 0x48
mov byte [esp + 0x85], 0x24
mov byte [esp + 0x86], 0x12
mov byte [esp + 0x87], 0x24
mov byte [esp + 0x88], cl
mov byte [esp + 0x89], al
mov byte [esp + 0x8a], al
mov byte [esp + 0x8b], al
mov byte [esp + 0x8c], cl
mov byte [esp + 0x8d], cl
mov byte [esp + 0x8e], cl
mov byte [esp + 0x8f], 0xb4
mov byte [esp + 0x90], 0x90
mov byte [esp + 0x91], dl
mov byte [esp + 0x92], dl
mov byte [esp + 0x93], 0x48
mov byte [esp + 0x94], 0x36
mov byte [esp + 0x95], 0x24
mov byte [esp + 0x96], 0x12
mov byte [esp + 0x97], 0x12
mov byte [esp + 0x98], cl
mov byte [esp + 0x99], cl
mov byte [esp + 0x9a], cl
mov byte [esp + 0x9b], cl
mov byte [esp + 0x9c], cl
mov byte [esp + 0x9d], 0xb4
mov byte [esp + 0x9e], 0xb4
mov byte [esp + 0x9f], 0x90
mov byte [esp + 0xa0], dl
mov byte [esp + 0xa1], dl
mov byte [esp + 0xa2], 0x6c
mov byte [esp + 0xa3], 0x48
mov byte [esp + 0xa4], 0x36
mov byte [esp + 0xa5], 0x12
mov byte [esp + 0xa6], 0x12
mov byte [esp + 0xa7], 0
mov byte [esp + 0xa8], cl
mov byte [esp + 0xa9], 0xb4
mov byte [esp + 0xaa], 0xb4
mov byte [esp + 0xab], 0xb4
mov byte [esp + 0xac], 0xb4
mov byte [esp + 0xad], 0xb4
mov byte [esp + 0xae], 0x90
mov byte [esp + 0xaf], dl
mov byte [esp + 0xb0], dl
mov byte [esp + 0xb1], 0x6c
mov byte [esp + 0xb2], 0x5a
mov byte [esp + 0xb3], 0x36
mov byte [esp + 0xb4], 0x24
mov byte [esp + 0xb5], 0x12
mov byte [esp + 0xb6], 0
mov byte [esp + 0xb7], 0
mov byte [esp + 0xb8], cl
mov byte [esp + 0xb9], 0x90
mov byte [esp + 0xba], 0x90
mov byte [esp + 0xbb], 0x90
mov byte [esp + 0xbc], 0x90
mov byte [esp + 0xbd], 0x90
mov byte [esp + 0xbe], dl
mov byte [esp + 0xbf], dl
mov byte [esp + 0xc0], 0x6c
mov byte [esp + 0xc1], 0x6c
mov byte [esp + 0xc2], 0x48
mov byte [esp + 0xc3], 0x36
mov byte [esp + 0xc4], 0x24
mov byte [esp + 0xc5], 0x12
mov byte [esp + 0xc6], 0
mov byte [esp + 0xc7], 0x36
mov byte [esp + 0xc8], 0xfc
mov byte [esp + 0xc9], 0x90
mov byte [esp + 0xca], dl
mov byte [esp + 0xcb], dl
mov byte [esp + 0xcc], dl
mov byte [esp + 0xcd], dl
mov byte [esp + 0xce], 0x6c
mov byte [esp + 0xcf], 0x6c
mov byte [esp + 0xd0], 0x5a
mov byte [esp + 0xd1], 0x5a
mov byte [esp + 0xd2], 0x36
mov byte [esp + 0xd3], 0x24
mov byte [esp + 0xd4], 0x12
mov byte [esp + 0xd5], 0
mov byte [esp + 0xd6], 0
mov byte [esp + 0xd7], 0xb4
mov byte [esp + 0xd8], bl
mov byte [esp + 0xd9], cl
mov byte [esp + 0xda], 0x6c
mov byte [esp + 0xdb], 0x6c
mov byte [esp + 0xdc], 0x6c
mov byte [esp + 0xdd], 0x6c
mov byte [esp + 0xde], 0x5a
mov byte [esp + 0xdf], 0x5a
mov byte [esp + 0xe0], 0x5a
mov byte [esp + 0xe1], 0x48
mov byte [esp + 0xe2], 0x36
mov byte [esp + 0xe3], 0x24
mov byte [esp + 0xe4], 0x12
mov byte [esp + 0xe5], 0
mov byte [esp + 0xe6], 0x48
mov byte [esp + 0xe7], bl
mov byte [esp + 0xe8], bl
mov byte [esp + 0xe9], bl
mov byte [esp + 0xea], 0xb4
mov byte [esp + 0xeb], 0x6c
mov byte [esp + 0xec], 0x5a
mov byte [esp + 0xed], 0x5a
mov byte [esp + 0xee], 0x5a
mov byte [esp + 0xef], 0x48
mov byte [esp + 0xf0], 0x48
mov byte [esp + 0xf1], 0x36
mov byte [esp + 0xf2], 0x24
mov byte [esp + 0xf3], 0x12
mov byte [esp + 0xf4], 0
mov byte [esp + 0xf5], 0x36
mov byte [esp + 0xf6], bl
mov byte [esp + 0xf7], bl
mov byte [esp + 0xf8], bl
mov byte [esp + 0xf9], bl
mov byte [esp + 0xfa], bl
mov byte [esp + 0xfb], cl
mov byte [esp + 0xfc], 0x5a
mov byte [esp + 0xfd], 0x48
mov byte [esp + 0xfe], 0x48
mov byte [esp + 0xff], 0x48
mov byte [esp + 0x100], 0x36
lea ecx, [esi + 0x524]
mov byte [esp + 0x101], 0x24
mov byte [esp + 0x102], 0x24
mov byte [esp + 0x103], 0x12
mov byte [esp + 0x104], 0x6c
mov byte [esp + 0x105], bl
mov byte [esp + 0x106], bl
mov byte [esp + 0x107], bl
mov byte [esp + 0x108], bl
mov byte [esp + 0x109], bl
mov byte [esp + 0x10a], bl
mov byte [esp + 0x10b], bl
mov byte [esp + 0x10c], 0xfc
mov byte [esp + 0x10d], 0xb4
mov byte [esp + 0x10e], 0x6c
mov byte [esp + 0x10f], 0x48
mov byte [esp + 0x110], 0x36
mov byte [esp + 0x111], 0x5a
mov byte [esp + 0x112], dl
mov byte [esp + 0x113], al
mov byte [esp + 0x114], bl
mov byte [esp + 0x115], bl
mov byte [esp + 0x116], bl
mov byte [esp + 0x117], bl
call fcn.004fad0d
mov eax, dword [esi + 0x4a4]
cmp eax, 0xffffffff
jne 0x48e5f8
mov eax, dword [esi + 0x4a0]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x4b0]
cmp eax, 0xffffffff
jne 0x48e613
mov ecx, dword [esi + 0x4ac]
mov dword [esp + 0x10], ecx
jmp 0x48e617
mov dword [esp + 0x10], eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call fcn.004fdb2c
push eax
lea ecx, [esp + 0x154]
call fcn.00505b33
xor ebp, ebp
lea ecx, [esp + 0x140]
mov dword [esp + 0x16c], ebp
call fcn.00505517
mov edx, dword [esp + 0x154]
push edx
mov byte [esp + 0x170], 1
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push eax
lea ecx, [esp + 0x144]
call fcn.005059ff
mov dword [esp + 0x11c], ebp
mov dword [esp + method.CBitmap.virtual_0], vtable.CBitmap.0
mov eax, dword [esp + 0x154]
push 0x10
push 0x10
push eax
mov byte [esp + 0x178], 2
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push eax
lea ecx, [esp + 0x11c]
call fcn.00505cfc
mov ecx, dword [esp + 0x11c]
mov edx, dword [esp + 0x144]
push ecx
push edx
call fcn.00505d85
mov edx, dword [esp + 0x14]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x10]
movzx esi, al
movzx ecx, dl
mov dword [esp + 0x12c], esi
sub esi, ecx
mov cx, dx
shr cx, 8
mov word [esp + 0x10], cx
mov cx, ax
shr cx, 8
shr edx, 0x10
shr eax, 0x10
mov dword [esp + 0x13c], esi
mov word [esp + 0x14], cx
mov dword [esp + 0x124], edx
mov dword [esp + 0x138], eax
jmp 0x48e720
mov cx, word [esp + 0x14]
mov esi, dword [esp + 0x13c]
jmp 0x48e720
movzx edi, byte [esp + ebp + 0x18]
imul esi, edi
mov eax, 0x80808081
imul esi
add edx, esi
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [esp + 0x12c]
sub eax, edx
mov dword [esp + 0x134], eax
movzx eax, byte [esp + 0x10]
movzx ecx, cl
mov esi, ecx
sub esi, eax
imul esi, edi
mov eax, 0x80808081
imul esi
add edx, esi
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
movzx edx, byte [esp + 0x124]
sub ecx, eax
mov dword [esp + 0x130], ecx
movzx ecx, byte [esp + 0x138]
mov esi, ecx
sub esi, edx
imul esi, edi
mov eax, 0x80808081
imul esi
add edx, esi
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
cmp edi, ebx
jne 0x48e7ad
mov eax, 0xff00
jmp 0x48e7c5
xor eax, eax
mov ah, cl
movzx ecx, byte [esp + 0x134]
mov al, byte [esp + 0x130]
shl eax, 8
or eax, ecx
mov edx, ebp
and edx, 0x8000000f
push eax
jns 0x48e7d5
dec edx
or edx, 0xfffffff0
inc edx
push edx
mov eax, ebp
cdq
and edx, 0xf
add eax, edx
sar eax, 4
push eax
mov eax, dword [esp + 0x150]
push eax
call dword [sym.imp.GDI32.dll_SetPixel]
inc ebp
cmp ebp, 0x100
jl 0x48e709
mov eax, dword [esp + 0x128]
test eax, eax
pop edi
pop esi
pop ebp
pop ebx
je 0x48e80f
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0x134]
push eax
push ecx
call fcn.00505d85
mov ecx, dword [esp + 0x110]
push 0
push 1
push 0x19
push 0x10
push 0x10
add ecx, 0x524
call fcn.004fade0
mov edx, dword [esp + 0x10c]
mov eax, dword [esp + 0x110]
mov ecx, dword [eax + 0x528]
push 0xff00
push edx
push ecx
call dword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
lea ecx, [esp + 0x108]
mov byte [esp + 0x15c], 1
mov dword [esp + method.CGdiObject.virtual_0], vtable.CGdiObject.0
call fcn.00505d53
lea ecx, [esp + 0x130]
mov byte [esp + 0x15c], 0
call fcn.00505a7d
lea ecx, [esp + 0x140]
mov dword [esp + 0x15c], 0xffffffff
call fcn.00505b8e
mov ecx, dword [esp + 0x154]
mov dword fs:[0], ecx
add esp, 0x160
ret