Function at 0x46d9fc
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], esi
mov dword [ebp - 4], ecx
push 0x240
mov edi, edx
mov esi, eax
call fcn.0048b682
pop ecx
mov ebx, eax
test ebx, ebx
je 0x46de2e
xor eax, eax
mov dword [ebx + 0x224], eax
mov dword [ebx + 4], eax
test esi, esi
je 0x46deaf
push esi
call fcn.0048e695
mov dword [ebp - 0x4c], eax
add esp, 4
mov dword [ebx + 0x10], eax
test eax, eax
je 0x46de2e
mov ecx, eax
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x46da6c
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x46da55
add eax, 0xffffffff
add eax, 1
push eax
call fcn.0048b682
pop ecx
mov dword [ebx + 0x178], eax
test eax, eax
je 0x46de2e
mov edi, dword [ebx + 0x10]
mov esi, eax
mov dl, byte [edi]
add edi, 1
mov byte [esi], dl
add esi, 1
test dl, dl
jne 0x46da89
fldz
fst qword [ebx + 0x78]
fst qword [ebx + 0x80]
fst qword [ebx + 0x88]
fst qword [ebx + 0x90]
fst qword [ebx + 0xa0]
fst qword [ebx + 0xa8]
fst qword [ebx + 0xb0]
fstp qword [ebx + 0xb8]
mov dword [ebx + 0xc0], 0xd
mov edx, 0xffff
xor eax, eax
mov dword [ebx + 0x154], 0xf
push 0x7f00
mov dword [ebx], eax
mov dword [ebx + 0x164], 0x19
push eax
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], eax
mov dword [ebx + 0x14], eax
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], eax
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], eax
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x2c], eax
mov dword [ebx + 0x30], eax
mov dword [ebx + 0x34], eax
mov dword [ebx + 0x38], eax
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x48], eax
mov dword [ebx + 0x4c], eax
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x54], eax
mov dword [ebx + 0x5c], eax
mov dword [ebx + 0x58], eax
mov dword [ebx + 0x60], eax
mov dword [ebx + 0x64], eax
mov dword [ebx + 0x68], eax
mov dword [ebx + 0x98], eax
mov word [ebx + 0xc4], dx
mov dword [ebx + 0xc8], eax
mov dword [ebx + 0xcc], eax
mov edi, 0xffffffff
mov dword [ebx + 0xd4], edi
mov dword [ebx + 0x174], eax
mov dword [ebx + 0xd8], eax
mov dword [ebx + 0xdc], eax
mov dword [ebx + 0xe0], eax
mov dword [ebx + 0xe4], eax
mov dword [ebx + 0xe8], eax
mov byte [ebx + 0xec], al
mov esi, 1
mov word [ebx + 0x12c], si
mov ecx, 0x808
mov word [ebx + 0x110], cx
mov dword [ebx + 0x114], eax
mov dword [ebx + 0x120], eax
mov dword [ebx + 0x124], eax
mov dword [ebx + 0x128], eax
mov dword [ebx + 0x130], eax
mov dword [ebx + 0x134], eax
mov dword [ebx + 0x138], eax
mov dword [ebx + 0x13c], eax
mov dword [ebx + 0x140], eax
mov dword [ebx + 0x144], eax
mov dword [ebx + 0x148], eax
mov dword [ebx + 0x14c], eax
mov dword [ebx + 0x150], esi
mov dword [ebx + 0x158], eax
mov dword [ebx + 0x15c], eax
mov dword [ebx + 0x160], eax
mov dword [ebx + 0x168], eax
mov dword [ebx + 0x16c], eax
mov dword [ebx + 0x170], eax
mov dword [ebx + 0x17c], eax
mov dword [ebx + 0x180], eax
mov dword [ebx + 0x184], eax
mov dword [ebx + 0x188], eax
mov dword [ebx + 0x18c], eax
mov dword [ebx + 0x190], eax
mov dword [ebx + 0x194], eax
mov dword [ebx + 0x198], eax
mov dword [ebx + 0x19c], eax
mov dword [ebx + 0x1a0], eax
mov dword [ebx + 0x1a4], eax
mov dword [ebx + 0x1a8], edi
mov dword [ebx + 0x1ac], edi
mov dword [ebx + 0x1b0], edi
mov dword [ebx + 0x1b4], edi
mov dword [ebx + 0x1b8], eax
mov dword [ebx + 0x1bc], eax
mov dword [ebx + 0x1c0], eax
mov dword [ebx + 0x1c4], eax
mov dword [ebx + 0x1c8], eax
mov dword [ebx + 0x1cc], eax
mov dword [ebx + 0x1d0], eax
mov dword [ebx + 0x1d4], eax
mov dword [ebx + 0x1d8], eax
mov dword [ebx + 0x1dc], eax
mov dword [ebx + 0x1e0], eax
mov dword [ebx + 0x1e4], eax
mov dword [ebx + 0x1e8], eax
mov dword [ebx + 0x1ec], eax
mov dword [ebx + 0x1f0], eax
mov dword [ebx + 0x1f4], eax
mov byte [ebx + 0x214], al
mov byte [ebx + 0x215], al
mov byte [ebx + 0x216], al
mov byte [ebx + 0x217], al
mov byte [ebx + 0x218], al
mov byte [ebx + 0x219], al
mov byte [ebx + 0x21a], al
mov dword [ebx + 0x21c], eax
mov byte [ebx + 0x220], al
mov dword [ebx + 0xd0], eax
mov word [ebx + 0x22c], ax
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [ebx + 0x230], eax
mov eax, dword [ebp - 4]
test eax, eax
je 0x46dd5a
mov eax, dword [eax + 4]
cmp eax, 1
jb 0x46de87
cmp eax, 2
jbe 0x46dd5a
cmp eax, 4
jne 0x46de87
mov esi, dword [ebp - 4]
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x14]
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], edi
jmp 0x46dd6b
mov eax, 0x80000000
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x40], eax
mov eax, dword [0x4caf84]
mov edx, dword [ebx + 0x10]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
call fcn.0046ba28
mov dword [ebp - 0x30], 0x46ff0000
mov dword [ebp - 0x44], eax
mov eax, dword [0x4cdb2c]
mov dword [ebp - 0x2c], ebx
cmp eax, 1
jne 0x46dd9c
or dword [ebp - 0x30], 0x1000000
movzx ebx, word [0x4caaac]
lea eax, [ebp - 0x20]
push eax
push dword [0x4caa8c]
call dword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
sub edx, esi
sub eax, ecx
mov dword [0x4cab70], edx
push 1
sub eax, ebx
mov dword [0x4cab74], eax
push eax
push edx
push ecx
push esi
push dword [0x4caa90]
call dword [sym.imp.USER32.dll_MoveWindow]
lea eax, [ebp - 0x4c]
push eax
push 0
push 0x220
push dword [0x4cafa0]
call dword [sym.imp.USER32.dll_SendMessageA]
mov ebx, eax
mov eax, dword [ebp - 4]
test eax, eax
je 0x46de4d
mov eax, dword [eax + 4]
cmp eax, 1
je 0x46de3d
cmp eax, 2
jne 0x46de21
xor eax, eax
push eax
push eax
push 0xf030
push ebx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x46de4d
cmp eax, 4
je 0x46de4d
push 8
call fcn.0047307c
pop ecx
mov ebx, dword [ebp - 0x10]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
xor eax, eax
mov esp, ebp
pop ebp
ret
xor eax, eax
push eax
push eax
push 0xf020
push ebx
call dword [sym.imp.USER32.dll_SendMessageA]
test ebx, ebx
je 0x46de78
push 0
push ebx
call dword [sym.imp.USER32.dll_GetSystemMenu]
mov esi, eax
push 0
push 0xf060
push esi
call dword [sym.imp.USER32.dll_DeleteMenu]
push 0x400
push 5
push esi
call dword [sym.imp.USER32.dll_DeleteMenu]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
mov eax, ebx
mov ebx, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
mov eax, 0x80000000
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x40], eax
push 8
call fcn.0047307c
pop ecx
mov ebx, dword [ebp - 0x10]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
xor eax, eax
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x28]
add edi, 1
push edi
push 0x4bdd28
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea ecx, [ebp - 0x28]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x46dee1
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x46deca
add eax, 0xffffffff
mov ecx, dword [0x44d4c40]
mov esi, eax
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x46df02
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x46deeb
add eax, 0xffffffff
lea edx, [esi + eax + 1]
push edx
call fcn.0048b682
mov dword [ebp - 0x4c], eax
add esp, 4
test eax, eax
je 0x46de2e
mov esi, eax
mov edi, dword [0x44d4c40]
mov dl, byte [edi]
add edi, 1
mov byte [esi], dl
add esi, 1
test dl, dl
jne 0x46df22
mov edi, dword [ebp - 0x4c]
lea edx, [ebp - 0x28]
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
add edi, 0xffffffff
mov al, byte [edx]
add edx, 1
mov byte [edi], al
add edi, 1
test al, al
jne 0x46df42
mov eax, dword [ebp - 0x4c]
mov dword [ebx + 0x10], eax
jmp 0x46da51