Function at 0x4611d0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov eax, dword [0x5cd9c4]
xor eax, ebp
mov dword [ebp - 4], eax
call sym.360pic.exe_protected:_static_class_std::map_struct_HWND_____class_DuiLib::CShadowUI___struct_std::less_struct_HWND______class_std::allocator_struct_std::pair_struct_HWND____const__class_DuiLib::CShadowUI________cdecl_DuiLib::CShadowUI::GetShadowMap_void_
mov dword [ebp - 0x30], eax
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x4c]
push ecx
mov ecx, dword [ebp - 0x30]
call fcn.0045f540
mov edx, dword [ebp - 0x4c]
add edx, 0x10
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
movzx ecx, byte [eax + 0x13]
test ecx, ecx
je 0x46123c
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [ebp - 0x3c]
jmp 0x4615c6
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], 0x1c
ja 0x461272
cmp dword [ebp - 0x2c], 0x1c
je 0x4612ae
mov eax, dword [ebp - 0x2c]
sub eax, 2
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x16
ja case.0x46126b.2
mov ecx, dword [ebp - 0x2c]
movzx edx, byte [ecx + 0x4615f0]
jmp dword [edx*4 + 0x4615d8]
cmp dword [ebp - 0x2c], 0x86
ja 0x46129c
cmp dword [ebp - 0x2c], 0x86
je 0x4612ae
cmp dword [ebp - 0x2c], 0x47
je 0x4612ce
cmp dword [ebp - 0x2c], 0x82
je 0x461596
jmp case.0x46126b.2
cmp dword [ebp - 0x2c], 0x232
je 0x461503
jmp case.0x46126b.2
push 0x1b
push 0
push 0
push 0
push 0
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp case.0x46126b.2
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [ebp - 0x28]
movzx eax, byte [edx + 0x11]
test eax, eax
je 0x46131a
push 0x11
push 0
push 0
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx + 0x16]
mov eax, dword [ebp - 0x10]
sub eax, edx
push eax
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx + 0x16]
mov eax, dword [ebp - 0x14]
sub eax, edx
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x461359
push 0x11
push 0
push 0
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx + 0x18]
add edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax + 0x16]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx + 0x17]
add eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx + 0x16]
sub eax, edx
push eax
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp case.0x46126b.2
mov eax, dword [ebp - 0x28]
movzx ecx, byte [eax + 0x10]
and ecx, 2
je 0x4613f9
lea edx, [ebp - 0x24]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [ebp - 0x28]
movzx edx, byte [ecx + 0x11]
test edx, edx
je 0x4613ba
push 0x11
push 0
push 0
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax + 0x16]
mov edx, dword [ebp - 0x20]
sub edx, ecx
push edx
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax + 0x16]
mov edx, dword [ebp - 0x24]
sub edx, ecx
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x4613f9
push 0x11
push 0
push 0
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax + 0x18]
add ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx + 0x16]
sub ecx, eax
push ecx
mov ecx, dword [ebp - 0x28]
movsx edx, byte [ecx + 0x17]
add edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
movsx ecx, byte [eax + 0x16]
sub edx, ecx
push edx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp case.0x46126b.2
mov edx, dword [ebp - 0x28]
movzx eax, byte [edx + 0x10]
and eax, 1
je 0x4614db
cmp dword [ebp + 0x10], 2
je 0x46141a
cmp dword [ebp + 0x10], 1
jne 0x46143e
push 0
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 0x28]
movzx ecx, byte [eax + 0x10]
and ecx, 0xfffffffd
mov edx, dword [ebp - 0x28]
mov byte [edx + 0x10], cl
jmp 0x4614d2
mov eax, dword [ebp - 0x28]
movzx ecx, byte [eax + 0x10]
and ecx, 4
je 0x4614d2
mov edx, dword [ebp + 0x14]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 0x1c]
and edx, 0xffff
movzx ecx, dx
cmp eax, ecx
jg 0x461492
mov edx, dword [ebp + 0x14]
shr edx, 0x10
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 0x1c]
shr edx, 0x10
and edx, 0xffff
movzx ecx, dx
cmp eax, ecx
jle 0x46149b
mov edx, dword [ebp - 0x28]
mov byte [edx + 0x20], 1
jmp 0x4614a7
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x28]
call sym.360pic.exe_protected:_void___thiscall_DuiLib::CShadowUI::Update_struct_HWND____
mov ecx, dword [ebp - 0x28]
movzx edx, byte [ecx + 0x10]
and edx, 2
jne 0x4614d2
push 4
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov edx, dword [ebp - 0x28]
movzx eax, byte [edx + 0x10]
or eax, 2
mov ecx, dword [ebp - 0x28]
mov byte [ecx + 0x10], al
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp + 0x14]
mov dword [edx + 0x1c], eax
jmp case.0x46126b.2
mov ecx, dword [ebp - 0x28]
movzx edx, byte [ecx + 0x20]
test edx, edx
je 0x4614fe
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x28]
call sym.360pic.exe_protected:_void___thiscall_DuiLib::CShadowUI::Update_struct_HWND____
mov ecx, dword [ebp - 0x28]
mov byte [ecx + 0x20], 0
jmp case.0x46126b.2
mov edx, dword [ebp - 0x28]
movzx eax, byte [edx + 0x10]
and eax, 2
je 0x46151b
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x28]
call sym.360pic.exe_protected:_void___thiscall_DuiLib::CShadowUI::Update_struct_HWND____
jmp case.0x46126b.2
mov edx, dword [ebp - 0x28]
movzx eax, byte [edx + 0x10]
and eax, 1
je 0x461585
cmp dword [ebp + 0x10], 0
jne 0x461553
push 0
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 0x28]
movzx ecx, byte [eax + 0x10]
and ecx, 0xfffffff9
mov edx, dword [ebp - 0x28]
mov byte [edx + 0x10], cl
jmp 0x461585
mov eax, dword [ebp - 0x28]
movzx ecx, byte [eax + 0x10]
and ecx, 4
jne 0x461585
mov edx, dword [ebp - 0x28]
mov byte [edx + 0x20], 1
push 4
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov edx, dword [ebp - 0x28]
movzx eax, byte [edx + 0x10]
or eax, 6
mov ecx, dword [ebp - 0x28]
mov byte [ecx + 0x10], al
jmp case.0x46126b.2
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp case.0x46126b.2
call sym.360pic.exe_protected:_static_class_std::map_struct_HWND_____class_DuiLib::CShadowUI___struct_std::less_struct_HWND______class_std::allocator_struct_std::pair_struct_HWND____const__class_DuiLib::CShadowUI________cdecl_DuiLib::CShadowUI::GetShadowMap_void_
mov dword [ebp - 0x40], eax
lea ecx, [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x40]
call fcn.00461db0
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [ebp - 0x44]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0051d360
mov esp, ebp
pop ebp
ret 0x10