Function at 0x420940
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x458f2b
mov eax, dword fs:[0]
push eax
sub esp, 0x44
push ebx
push ebp
push esi
push edi
mov eax, dword [0x476028]
xor eax, esp
push eax
lea eax, [esp + 0x58]
mov dword fs:[0], eax
mov ebx, ecx
call sub.MFC80U.DLL_Ordinal_4574
call sub.MFC80U.DLL_Ordinal_1079
mov eax, dword [eax + 0xc]
push 0x9e
push eax
call dword [sym.imp.USER32.dll_LoadAcceleratorsW]
push str.skin_
lea ecx, [esp + 0x24]
mov dword [ebx + 0x7c], eax
call dword [sym.imp.MFC80U.DLL_Ordinal_283]
mov esi, eax
mov dword [esp + 0x60], 0
call fcn.0041a000
lea edi, [eax + 0x664]
lea eax, [esp + 0x1c]
push esi
push eax
call fcn.004195e0
push eax
lea ecx, [esp + 0x24]
push ecx
mov edi, 0x45f7e4
mov byte [esp + 0x70], 1
call fcn.004195e0
mov byte [esp + 0x70], 2
mov eax, dword [eax]
add esp, 0xc
mov edx, eax
mov ecx, esp
mov dword [esp + 0x28], esp
call fcn.00419db0
mov edx, dword [ebx + 0x20]
push edx
lea eax, [ebx + 0x78]
push eax
call fcn.0040fd60
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
lea ecx, [esp + 0x20]
mov dword [esp + 0x60], 0xffffffff
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
mov edx, dword [ebx + 0x80]
mov eax, dword [edx + 0x13c]
lea edi, [ebx + 0x80]
push ebx
push 0x9a
mov ecx, edi
call eax
mov edx, dword [ebx + 0x21c]
mov eax, dword [edx + 0x13c]
lea ebp, [ebx + 0x21c]
push ebx
push 0x9b
mov ecx, ebp
call eax
push 0x430
mov ecx, ebx
call sub.MFC80U.DLL_Ordinal_2651
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x34]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x34]
lea ecx, [eax + 9]
add eax, 1
lea edx, [esp + 0x34]
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0xa0]
push edx
push eax
add esi, 0xfffffffd
mov dword [esp + 0x30], ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [esp + 0x44]
mov edx, dword [ebx + 0x23c]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, esi
sub eax, dword [esp + 0x34]
mov dword [esp + 0x34], esi
add dword [esp + 0x3c], eax
mov eax, dword [esp + 0x28]
mov ecx, eax
sub ecx, dword [esp + 0x38]
mov dword [esp + 0x38], eax
add dword [esp + 0x40], ecx
call fcn.0041c7a0
add eax, dword [esp + 0x38]
push 0
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x34]
mov edx, esi
sub edx, dword [esp + 0x48]
push 0
add dword [esp + 0x54], edx
mov edx, dword [ebx + 0x2b4]
mov ecx, eax
sub ecx, dword [esp + 0x50]
push 0x18b
add dword [esp + 0x5c], ecx
push edx
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], eax
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [eax + eax*4]
lea eax, [eax*4 + 0xa]
cmp eax, 0x12c
jle 0x420b22
mov eax, 0x12c
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x40]
add eax, ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x38]
push 1
sub edx, eax
push edx
mov edx, dword [esp + 0x44]
sub edx, ecx
push edx
push eax
push ecx
mov ecx, edi
call sub.MFC80U.DLL_Ordinal_4119
push 0
mov ecx, edi
call sub.MFC80U.DLL_Ordinal_6086
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
push 1
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x4c]
sub edx, ecx
push edx
push eax
push ecx
mov ecx, ebp
call sub.MFC80U.DLL_Ordinal_4119
push 0
mov ecx, ebp
call sub.MFC80U.DLL_Ordinal_6086
lea ebp, [ebx + 0x74]
test ebp, ebp
je 0x420bb2
mov esi, dword [0x477958]
mov eax, dword [esi + 0x1c]
add esi, 0x14
test eax, eax
mov dword [esp + 0x24], eax
jge 0x420ba0
jmp sub.MFC80U.DLL_Ordinal_1176
lea edi, [eax + 1]
call fcn.004160a0
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x24]
mov dword [eax + ecx*4], ebp
push 0
mov ecx, ebx
call sub.MFC80U.DLL_Ordinal_1386
mov eax, 1
mov ecx, dword [esp + 0x58]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret