Function at 0x4306c0
Capabilities:
Hide graphical window
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1ec
mov eax, dword [0x4a9d30]
xor eax, ebp
mov dword [ebp - 4], eax
mov edx, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, ecx
mov dword [ebp - 0x1d4], edx
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x1d0], edi
mov eax, dword [esi + 0x156]
test eax, eax
je 0x430706
push edi
push edx
push ebx
push esi
call eax
mov edx, dword [ebp - 0x1d4]
add esp, 0x10
cmp dword [edi], 1
jne case.0x431826.275
mov eax, dword [ebx + 4]
cmp eax, 0x111
ja 0x4317fe
je 0x431714
sub eax, 2
cmp eax, 0xfe
ja case.0x431826.275
movzx eax, byte [eax + 0x432450]
jmp dword [eax*4 + 0x432418]
mov eax, dword [ebx + 0xc]
cmp dword [eax + 8], 0xfffffdf8
jne 0x43075f
mov ecx, dword [esi + 0x176]
test ecx, ecx
je 0x43075f
push eax
push dword [ebx + 8]
push esi
call ecx
add esp, 0xc
mov eax, dword [ebp - 0x1d4]
pop edi
pop esi
pop ebx
mov dword [eax], 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov dword [edx], 0
mov dword [edi], 0
xor edi, edi
cmp dword [esi + 0x4c], edi
jle 0x4307a5
mov eax, dword [esi + 0x28]
mov ecx, dword [eax + edi*4]
push dword [ecx + 0x7f]
call fcn.00445970
inc edi
cmp edi, dword [esi + 0x4c]
jl 0x430791
xor edi, edi
cmp dword [esi + 0x50], edi
jle 0x4307c4
lea esp, [esp]
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax + edi*4]
push dword [ecx + 0x7f]
call fcn.00445970
inc edi
cmp edi, dword [esi + 0x50]
jl 0x4307b0
xor edi, edi
cmp dword [esi + 0x5c], edi
jle 0x4307e7
jmp 0x4307d0
mov eax, dword [esi + 0x38]
mov ecx, dword [eax + edi*4]
push dword [ecx + 0x82]
call fcn.0043fe40
inc edi
cmp edi, dword [esi + 0x5c]
jl 0x4307d0
xor edi, edi
cmp dword [esi + 0x48], edi
jle 0x430804
mov edi, edi
mov eax, dword [esi + 0x24]
mov ecx, dword [eax + edi*4]
push dword [ecx + 0x24]
call fcn.00442900
inc edi
cmp edi, dword [esi + 0x48]
jl 0x4307f0
xor edi, edi
cmp dword [esi + 0x40], edi
jle case.0x431826.275
nop
mov eax, dword [esi + 0x1c]
mov ecx, dword [eax + edi*4]
push dword [ecx + 0x20]
call fcn.0042b7d0
inc edi
cmp edi, dword [esi + 0x40]
jl 0x430810
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi]
cmp dword [eax + 0x6a], 1
jne 0x430866
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x60]
cmp eax, dword [ebx + 8]
jne case.0x431826.275
cmp word [ebx + 0xc], 1
jne case.0x431826.275
push dword [esi + 0x70]
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 1
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp dword [esi + 0xfe], 0
jne case.0x431826.275
mov dword [edi], 0
pop edi
pop esi
mov dword [edx], 0
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp dword [esi + 8], 0xffffffff
mov ebx, 1
je 0x43091c
push 0xffffffffffffffff
mov ecx, esi
call fcn.00438150
push 0
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_GetSystemMenu]
test eax, eax
je 0x430912
push 0
push 0xf060
push eax
call dword [sym.imp.USER32.dll_GetMenuState]
test bl, al
mov eax, 0
cmovne ebx, eax
cmp dword [esi + 8], 0xffffffff
jne 0x430a06
test ebx, ebx
je 0x430a06
mov eax, dword [esi + 0x15a]
mov dword [ebp - 0x1d8], 1
test eax, eax
je 0x430952
lea ecx, [ebp - 0x1d8]
push ecx
push esi
call eax
add esp, 8
cmp dword [ebp - 0x1d8], 1
jne 0x430a06
cmp dword [esi + 0x146], 0
jne 0x4309fd
mov eax, dword [esi]
test eax, eax
je 0x43096b
cmp dword [eax + 8], 0
jne 0x4309a2
mov eax, dword [esi + 0xc]
test eax, eax
je 0x4309a2
push 1
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
cmp dword [0x4ad214], 0
jne 0x430998
push dword [esi + 0xc]
call dword [sym.imp.USER32.dll_SetFocus]
push dword [esi + 0xc]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
jmp 0x4309a2
mov dword [0x4ad214], 0
lea eax, [ebp - 0x188]
push eax
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x188]
mov ecx, dword [esi]
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x17c]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x1d0], eax
lea eax, [ebp - 0x1d0]
push ecx
push eax
lea eax, [ebp - 0x1dc]
push eax
lea eax, [ebp - 0x188]
push eax
lea eax, [ebp - 0x184]
push eax
push dword [esi + 4]
call fcn.0041ffa0
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 0
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
push dword [esi + 8]
mov ecx, esi
call fcn.00438150
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x15e]
test eax, eax
je 0x430a60
push edi
push edx
push dword [ebx + 0xc]
push dword [ebx + 8]
push esi
call eax
add esp, 0x14
cmp dword [edi], 0
je case.0x431826.275
mov eax, dword [ebx + 8]
cmp eax, 0x70
jne 0x430a91
mov ecx, esi
call fcn.004326b0
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 0x7b
jne case.0x431826.275
mov ecx, dword [esi]
push 0xffffffffffffffff
push esi
call fcn.00478a20
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp word [ebx + 8], 0
je case.0x431826.275
mov ecx, dword [esi + 0x142]
test ecx, ecx
je 0x430b02
mov eax, dword [ecx + 0x44]
cmp eax, 0xffffffff
je 0x430b02
push eax
call fcn.0041cea0
mov ecx, dword [eax + 8]
push dword [ecx + 8]
call fcn.00438150
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 0
mov dword [edi], 0
jmp 0x430a0c
cmp dword [esi + 0x146], 0
jne 0x430a06
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x430b3f
mov eax, dword [esi + 8]
cmp eax, 0xffffffff
jne 0x430b32
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_SetFocus]
jmp 0x430a06
push eax
mov ecx, esi
call fcn.00438150
jmp 0x430a06
mov edx, dword [0x4a9734]
xor ecx, ecx
mov eax, dword [edx + 0x2c]
mov dword [ebp - 0x1dc], eax
test eax, eax
jle 0x430a06
mov eax, dword [esi + 0x60]
mov edx, dword [edx + 0x28]
mov esi, dword [ebp - 0x1dc]
mov dword [ebp - 0x16c], edx
mov dword [ebp - 0x1d8], eax
mov eax, dword [edx]
mov edi, dword [ebp - 0x1d8]
cmp dword [eax + 0xc], edi
mov edi, dword [ebp - 0x1d0]
je 0x430b90
inc ecx
add edx, 4
cmp ecx, esi
jl 0x430b70
jmp 0x430a06
push dword [ebx + 0xc]
mov eax, dword [ebp - 0x16c]
push dword [ebx + 8]
push 6
mov eax, dword [eax + ecx*4]
push dword [eax + 0x60]
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 0
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x1d0], 0
mov eax, dword [eax + 0x14]
jmp 0x43208a
cmp dword [esi + 0xfe], 1
jne 0x430a06
lea eax, [ebp - 0x144]
push eax
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_BeginPaint]
cmp dword [esi + 0x146], 0
mov ebx, eax
jne 0x430e3e
lea eax, [ebp - 0x178]
push eax
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [esi + 0x9c]
mov eax, dword [esi + 0xa4]
add dword [ebp - 0x174], ecx
sub dword [ebp - 0x16c], eax
push 0x14
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push 1
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
push eax
push ebx
mov dword [ebp - 0x1dc], eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [ebp - 0x16c]
push 0
dec ecx
mov dword [ebp - 0x1d0], eax
push ecx
mov ecx, dword [ebp - 0x178]
inc ecx
push ecx
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
mov eax, dword [ebp - 0x16c]
dec eax
push eax
mov eax, dword [ebp - 0x170]
inc eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x16c]
push 0
add eax, 0xfffffffe
push eax
mov eax, dword [ebp - 0x170]
dec eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
push dword [ebp - 0x174]
mov eax, dword [ebp - 0x170]
dec eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x174]
push 0
inc eax
push eax
mov eax, dword [ebp - 0x178]
inc eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
mov eax, dword [ebp - 0x174]
inc eax
push eax
push dword [ebp - 0x170]
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x174]
push 0
add eax, 2
push eax
mov eax, dword [ebp - 0x178]
inc eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
push dword [ebp - 0x16c]
mov eax, dword [ebp - 0x178]
inc eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x1d0]
test eax, eax
je 0x430d2f
push eax
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x1dc]
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x10
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push 1
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
push eax
push ebx
mov dword [ebp - 0x1dc], eax
call dword [sym.imp.GDI32.dll_SelectObject]
push 0
push dword [ebp - 0x174]
mov dword [ebp - 0x1d0], eax
push dword [ebp - 0x178]
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
push dword [ebp - 0x174]
mov eax, dword [ebp - 0x170]
dec eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x174]
push 0
inc eax
push eax
push dword [ebp - 0x178]
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
mov eax, dword [ebp - 0x16c]
dec eax
push eax
push dword [ebp - 0x178]
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x16c]
push 0
add eax, 0xfffffffe
push eax
mov eax, dword [ebp - 0x178]
inc eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
mov eax, dword [ebp - 0x16c]
add eax, 0xfffffffe
push eax
mov eax, dword [ebp - 0x170]
dec eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x16c]
push 0
add eax, 0xfffffffd
push eax
mov eax, dword [ebp - 0x170]
add eax, 0xfffffffe
push eax
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
push dword [ebp - 0x174]
mov eax, dword [ebp - 0x170]
add eax, 0xfffffffe
push eax
push ebx
call dword [sym.imp.GDI32.dll_LineTo]
mov eax, dword [ebp - 0x1d0]
test eax, eax
je 0x430e32
push eax
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x1dc]
call dword [sym.imp.GDI32.dll_DeleteObject]
lea eax, [ebp - 0x144]
push eax
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_EndPaint]
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 0
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp dword [esi + 0x3c], 0
jle 0x430e90
lea esp, [esp]
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx]
call fcn.0042c0a0
cmp dword [esi + 0x3c], 0
jg 0x430e80
cmp dword [esi + 0x40], 0
jle 0x430ea6
mov ecx, dword [esi + 0x1c]
mov ecx, dword [ecx]
call fcn.0042c0a0
cmp dword [esi + 0x40], 0
jg 0x430e96
cmp dword [esi + 0x44], 0
jle 0x430ec0
lea esp, [esp]
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
call fcn.004399b0
cmp dword [esi + 0x44], 0
jg 0x430eb0
cmp dword [esi + 0x48], 0
jle 0x430ed6
mov ecx, dword [esi + 0x24]
mov ecx, dword [ecx]
call fcn.00442aa0
cmp dword [esi + 0x48], 0
jg 0x430ec6
cmp dword [esi + 0x4c], 0
jle 0x430ef0
lea esp, [esp]
mov ecx, dword [esi + 0x28]
mov ecx, dword [ecx]
call fcn.00446440
cmp dword [esi + 0x4c], 0
jg 0x430ee0
cmp dword [esi + 0x50], 0
jle 0x430f06
mov ecx, dword [esi + 0x2c]
mov ecx, dword [ecx]
call fcn.00446440
cmp dword [esi + 0x50], 0
jg 0x430ef6
cmp dword [esi + 0x5c], 0
jle 0x430f20
lea esp, [esp]
mov ecx, dword [esi + 0x38]
mov ecx, dword [ecx]
call fcn.00440cb0
cmp dword [esi + 0x5c], 0
jg 0x430f10
cmp dword [esi + 0x54], 0
jle 0x430f36
mov ecx, dword [esi + 0x30]
mov ecx, dword [ecx]
call fcn.004399b0
cmp dword [esi + 0x54], 0
jg 0x430f26
cmp dword [esi + 0x58], 0
jle 0x430f50
lea esp, [esp]
mov ecx, dword [esi + 0x34]
mov ecx, dword [ecx]
call fcn.004399b0
cmp dword [esi + 0x58], 0
jg 0x430f40
mov eax, dword [esi + 0x142]
mov dword [ebp - 0x1d0], eax
test eax, eax
je 0x430f7f
mov ecx, eax
call fcn.0041cd90
push dword [ebp - 0x1d0]
call fcn.004527ac
add esp, 4
mov dword [esi + 0x142], 0
push dword [ebx]
mov ecx, dword [esi]
call fcn.00427b80
cmp eax, 0xffffffff
je 0x430a06
mov ecx, dword [esi]
push eax
call fcn.00429520
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 0
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
movzx eax, word [ebx + 0xc]
mov ecx, dword [esi + 0x98]
mov edi, dword [ebx + 8]
mov dword [ebp - 0x1e4], eax
movzx eax, word [ebx + 0xe]
mov dword [ebp - 0x1d8], eax
mov eax, dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebp - 0x1d0], edi
test ecx, ecx
je 0x430ff8
push dword [ebx + 0xc]
push edi
push 5
push ecx
call eax
mov eax, dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [esi + 0xa0]
test edx, edx
je 0x4310f4
push dword [ebx + 0xc]
push dword [ebx + 8]
push 5
push edx
call eax
push 0x64
lea eax, [ebp - 0x168]
push 0
push eax
call fcn.00453c50
add esp, 0xc
cmp dword [0x4ad21c], 0
je 0x43104a
movq xmm0, qword [str._tTutorial]
mov ax, word [0x488e04]
movq qword [ebp - 0x168], xmm0
mov word [ebp - 0x160], ax
cmp byte [ebp - 0x168], 0
je 0x4310f4
push dword [esi + 0xa0]
call dword [sym.imp.USER32.dll_GetDC]
mov edi, eax
lea eax, [ebp - 0x170]
push eax
push 0x10
push str.XXXXTutorialXXXX
push edi
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
lea eax, [ebp - 0x188]
push eax
push dword [esi + 0xa0]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x170]
sub eax, dword [ebp - 0x188]
push edi
push dword [esi + 0xa0]
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x1dc], 0xffffffff
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [ebp - 0x1e0]
push eax
push 2
push 0x404
push dword [esi + 0xa0]
call edi
lea eax, [ebp - 0x168]
push eax
push 1
push 0x401
push dword [esi + 0xa0]
call edi
mov edi, dword [ebp - 0x1d0]
cmp edi, 4
je case.0x431826.275
cmp edi, 3
je case.0x431826.275
cmp edi, 1
je case.0x431826.275
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 3
call edi
mov ebx, eax
push 2
mov dword [ebp - 0x1d4], ebx
call edi
xor edx, edx
mov dword [ebp - 0x1e8], eax
xor edi, edi
mov dword [ebp - 0x1d0], edx
mov dword [ebp - 0x1dc], edi
cmp dword [esi + 0x136], edx
je 0x431540
cmp dword [esi + 0x13a], edx
je 0x431540
mov eax, dword [esi + 0x11e]
xorps xmm0, xmm0
mov dword [ebp - 0x198], edx
mov edx, dword [sym.imp.USER32.dll_GetScrollInfo]
movq qword [ebp - 0x1a0], xmm0
movdqu xmmword [ebp - 0x1b0], xmm0
mov dword [ebp - 0x1b0], 0x1c
mov dword [ebp - 0x1ac], 7
test eax, eax
je 0x4311c3
lea ecx, [ebp - 0x1b0]
push ecx
push 2
push eax
call edx
push dword [esi + 0x11e]
call dword [sym.imp.USER32.dll_DestroyWindow]
cmp dword [esi + 0x13e], edi
mov edx, dword [sym.imp.USER32.dll_GetScrollInfo]
mov dword [esi + 0x11e], edi
cmovne edi, ebx
mov dword [ebp - 0x1dc], edi
mov eax, dword [esi + 0x122]
xorps xmm0, xmm0
movq qword [ebp - 0x1bc], xmm0
mov dword [ebp - 0x1b4], 0
movdqu xmmword [ebp - 0x1cc], xmm0
mov dword [ebp - 0x1cc], 0x1c
mov dword [ebp - 0x1c8], 7
test eax, eax
je 0x431239
lea ecx, [ebp - 0x1cc]
push ecx
push 2
push eax
call edx
push dword [esi + 0x122]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov edi, dword [ebp - 0x1e8]
xor edx, edx
cmp dword [esi + 0x13e], edx
mov dword [esi + 0x122], 0
cmovne edx, edi
mov dword [ebp - 0x1d0], edx
jmp 0x43123f
mov edi, dword [ebp - 0x1e8]
mov eax, dword [ebp - 0x1e4]
mov ebx, dword [ebp - 0x1d8]
mov ecx, dword [esi + 0x116]
movsx edx, ax
mov eax, dword [esi + 0xa4]
sub ecx, edx
movsx ebx, bx
sub eax, ebx
mov dword [ebp - 0x16c], ecx
add eax, dword [esi + 0x11a]
add eax, dword [esi + 0x9c]
mov dword [ebp - 0x1ec], eax
test ecx, ecx
jle 0x431297
add eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x1ec], eax
test eax, eax
jle 0x4312b7
add ecx, edi
mov dword [ebp - 0x16c], ecx
jmp 0x4312b7
test eax, eax
jle 0x4312b7
add ecx, edi
mov dword [ebp - 0x16c], ecx
test ecx, ecx
jle 0x4313a6
add eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x1ec], eax
test ecx, ecx
jle 0x4313a6
push 0
xor ecx, ecx
test eax, eax
mov eax, dword [esi]
cmovg ecx, edi
mov edi, edx
sub edi, ecx
push dword [eax + 0x32]
mov eax, ebx
sub eax, dword [esi + 0xa4]
push 0xffffffffffffffff
push dword [esi + 0x60]
push eax
push edi
push 0
push 0
push 0x40000004
push 0x4857e2
push str.scrollbar
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [esi + 0x116]
sub ecx, 3
mov dword [esi + 0x11e], eax
push 1
mov dword [ebp - 0x1a4], ecx
lea ecx, [ebp - 0x1b0]
push ecx
push 2
push eax
mov dword [ebp - 0x1b0], 0x1c
mov dword [ebp - 0x1a0], edi
mov dword [ebp - 0x1a8], 1
mov dword [ebp - 0x1ac], 7
call dword [sym.imp.USER32.dll_SetScrollInfo]
push 1
push 2
push dword [esi + 0x11e]
call dword [sym.imp.USER32.dll_ShowScrollBar]
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x198], 0
push eax
xorps xmm0, xmm0
push 2
push dword [esi + 0x11e]
movdqu xmmword [ebp - 0x1b0], xmm0
mov dword [ebp - 0x1b0], 0x1c
movq qword [ebp - 0x1a0], xmm0
mov dword [ebp - 0x1ac], 7
call dword [sym.imp.USER32.dll_GetScrollInfo]
mov eax, dword [ebp - 0x19c]
dec eax
push eax
jmp 0x4313a8
push 0
mov ecx, esi
call fcn.00437c30
cmp dword [ebp - 0x1ec], 0
push 0
jle 0x4314c7
mov eax, dword [esi]
xor edi, edi
cmp dword [ebp - 0x16c], edi
mov ecx, dword [esi + 0x9c]
cmovg edi, dword [ebp - 0x1d4]
push dword [eax + 0x32]
mov edx, dword [ebp - 0x1e4]
mov eax, ebx
push 0xffffffffffffffff
push dword [esi + 0x60]
sub eax, edi
sub eax, ecx
sub eax, dword [esi + 0xa4]
push eax
movsx eax, dx
push eax
push ecx
push 0
push 0x40000005
push 0x4857e2
push str.scrollbar
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, ebx
mov dword [esi + 0x122], eax
sub ecx, edi
mov dword [ebp - 0x1cc], 0x1c
sub ecx, dword [esi + 0xa4]
sub ecx, dword [esi + 0x9c]
mov dword [ebp - 0x1bc], ecx
mov ecx, dword [esi + 0x11a]
sub ecx, 3
mov dword [ebp - 0x1c4], 1
push 1
mov dword [ebp - 0x1c0], ecx
lea ecx, [ebp - 0x1cc]
push ecx
push 2
push eax
mov dword [ebp - 0x1c8], 7
call dword [sym.imp.USER32.dll_SetScrollInfo]
push 1
push 2
push dword [esi + 0x122]
call dword [sym.imp.USER32.dll_ShowScrollBar]
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x1b4], 0
push eax
xorps xmm0, xmm0
push 2
push dword [esi + 0x122]
movdqu xmmword [ebp - 0x1cc], xmm0
mov dword [ebp - 0x1cc], 0x1c
movq qword [ebp - 0x1bc], xmm0
mov dword [ebp - 0x1c8], 7
call dword [sym.imp.USER32.dll_GetScrollInfo]
mov eax, dword [ebp - 0x1b8]
dec eax
push eax
mov ecx, esi
call fcn.00437cf0
sub ebx, dword [esi + 0xa4]
cmp dword [esi + 0x11e], 0
je 0x4314e5
sub ebx, dword [ebp - 0x1d4]
jmp 0x4314e8
sub ebx, 2
cmp dword [esi + 0x122], 0
mov ecx, dword [ebp - 0x1e4]
movsx eax, cx
je 0x431502
sub eax, dword [ebp - 0x1e8]
jmp 0x431505
sub eax, 2
mov ecx, dword [esi + 0x9c]
add eax, 0xfffffffe
push 0x14
add ecx, 2
sub ebx, ecx
push ebx
push eax
push ecx
push 2
push 0
push dword [esi + 0x13a]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov edi, dword [ebp - 0x1dc]
mov edx, dword [ebp - 0x1d0]
mov ebx, dword [ebp - 0x1d4]
mov eax, dword [ebp - 0x1e8]
cmp dword [esi + 0x11e], 0
je 0x43154b
sub edi, ebx
cmp dword [esi + 0x122], 0
je 0x431556
sub edx, eax
mov ecx, dword [esi + 0x5c]
test ecx, ecx
jne 0x431563
mov dword [esi + 0x13e], ecx
mov ebx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x1d8]
movsx ebx, bx
mov dword [ebp - 0x1d0], ebx
mov ebx, dword [esi + 0x74]
sub ebx, dword [esi + 0x7c]
cwde
add ebx, edx
sub eax, dword [esi + 0x80]
mov edx, dword [ebp - 0x1d0]
add eax, edi
add eax, dword [esi + 0x78]
add ebx, edx
xor edi, edi
mov dword [ebp - 0x1dc], eax
test ecx, ecx
jle 0x431694
jmp 0x4315b0
mov eax, dword [esi + 0x38]
mov dword [esi + 0x13e], 1
mov eax, dword [eax + edi*4]
cmp dword [eax + 0x168], 1
jne 0x43161d
cmp dword [esi + 0x84], 0
jne 0x43161d
lea ecx, [ebp - 0x188]
push ecx
push dword [eax + 0x18]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x17c]
add edx, ebx
mov ecx, dword [ebp - 0x184]
sub eax, ecx
push 0x12
push eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x180], edx
sub edx, eax
push edx
push ecx
push eax
mov eax, dword [esi + 0x38]
push 0
mov eax, dword [eax + edi*4]
push dword [eax + 0x18]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [esi + 0x38]
mov eax, dword [eax + edi*4]
cmp dword [eax + 0x16c], 1
jne 0x431684
cmp dword [esi + 0x84], 0
jne 0x431684
lea ecx, [ebp - 0x188]
push ecx
push dword [eax + 0x18]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x17c]
add eax, dword [ebp - 0x1dc]
mov edx, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x188]
mov dword [ebp - 0x17c], eax
sub eax, edx
push 0x12
push eax
mov eax, dword [ebp - 0x180]
sub eax, ecx
push eax
mov eax, dword [esi + 0x38]
push edx
push ecx
push 0
mov eax, dword [eax + edi*4]
push dword [eax + 0x18]
call dword [sym.imp.USER32.dll_SetWindowPos]
inc edi
cmp edi, dword [esi + 0x5c]
jl 0x4315b0
mov edx, dword [ebp - 0x1d0]
mov eax, dword [esi + 0x17a]
lea edi, [esi + 0x74]
test eax, eax
je 0x4316cc
cmp dword [edi], 0
jne 0x4316bb
cmp dword [esi + 0x7c], 0
jne 0x4316bb
cmp dword [esi + 0x78], 0
jne 0x4316bb
cmp dword [esi + 0x80], 0
je 0x4316cc
mov ebx, dword [ebp - 0x1d8]
movsx ecx, bx
push ecx
push edx
push esi
call eax
add esp, 0xc
push edi
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_GetClientRect]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
xor ebx, ebx
cmp dword [esi + 0x4c], ebx
jle 0x4323f1
mov eax, dword [esi + 0x28]
mov eax, dword [eax + ebx*4]
mov ecx, dword [eax + 0x13d]
test ecx, ecx
je 0x431709
call fcn.0040e6b0
inc ebx
cmp ebx, dword [esi + 0x4c]
jl 0x4316f4
jmp 0x4323f1
mov eax, dword [ebx + 0xc]
mov ecx, esi
mov dword [ebx], eax
lea eax, [ebp - 0x1d0]
push eax
push edx
push edi
push ebx
mov dword [ebp - 0x1d0], 0
call fcn.0042f9b0
cmp dword [ebp - 0x1d0], 0
jne case.0x431826.275
mov eax, dword [esi + 8]
mov ecx, esi
push 0xffffffffffffffff
mov dword [ebp - 0x1dc], eax
call fcn.00438150
cmp dword [esi + 8], 0xffffffff
jne case.0x431826.275
push dword [ebp - 0x1dc]
mov ecx, esi
call fcn.00438150
cmp dword [esi + 0x172], 0
je case.0x431826.275
movzx eax, word [ebx + 0xa]
lea ecx, [ebp - 0x1dc]
mov dword [ebp - 0x16c], eax
movzx eax, word [ebx + 8]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 0x1d8], eax
push ecx
movzx eax, ax
mov ecx, esi
push eax
call fcn.00432750
cmp eax, 1
je 0x4317ca
cmp dword [ebp - 0x1dc], 0
jne case.0x431826.275
test ebx, ebx
je case.0x431826.275
push ebx
call dword [sym.imp.USER32.dll_IsWindowEnabled]
cmp eax, 1
jne case.0x431826.275
mov eax, dword [ebp - 0x1d4]
push edi
push eax
mov eax, dword [esi + 0x172]
push ebx
push dword [ebp - 0x1d8]
push dword [ebp - 0x16c]
push esi
call eax
add esp, 0x18
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 0x214
ja 0x432294
je 0x4320b0
sub eax, 0x112
cmp eax, 0xf1
ja case.0x431826.275
movzx eax, byte [eax + 0x43257c]
jmp dword [eax*4 + 0x432550]
movzx eax, word [ebx + 8]
mov edi, dword [ebx + 0xc]
mov dword [ebp - 0x1d0], eax
movzx eax, word [ebx + 0xa]
mov dword [ebp - 0x1dc], eax
mov eax, dword [esi + 0x11e]
cmp edi, eax
jne case.0x431826.275
mov ebx, dword [sym.imp.USER32.dll_GetScrollInfo]
lea ecx, [ebp - 0x194]
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0x17c], 0
push 2
movdqu xmmword [ebp - 0x194], xmm0
push eax
movq qword [ebp - 0x184], xmm0
mov dword [ebp - 0x194], 0x1c
mov dword [ebp - 0x190], 7
call ebx
mov eax, dword [ebp - 0x1d0]
cmp eax, 5
ja case.default.0x4318a4
jmp dword [eax*4 + 0x432670]
mov eax, dword [ebp - 0x180]
push 1
add eax, 5
push eax
push 2
push edi
mov dword [ebp - 0x180], eax
call dword [sym.imp.USER32.dll_SetScrollPos]
test eax, eax
jne case.default.0x4318a4
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp case.default.0x4318a4
mov eax, dword [ebp - 0x180]
sub eax, 5
mov dword [ebp - 0x180], eax
jmp 0x431912
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x180], eax
jmp 0x431912
mov eax, dword [ebp - 0x180]
add eax, dword [ebp - 0x184]
mov dword [ebp - 0x180], eax
jmp 0x431912
mov eax, dword [ebp - 0x1dc]
cwde
push 1
push eax
push 2
push edi
call dword [sym.imp.USER32.dll_SetScrollPos]
lea eax, [ebp - 0x194]
mov dword [ebp - 0x17c], 0
push eax
xorps xmm0, xmm0
push 2
push dword [esi + 0x11e]
movdqu xmmword [ebp - 0x194], xmm0
mov dword [ebp - 0x194], 0x1c
movq qword [ebp - 0x184], xmm0
mov dword [ebp - 0x190], 7
call ebx
mov eax, dword [ebp - 0x180]
mov ecx, esi
dec eax
push eax
call fcn.00437c30
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
movzx eax, word [ebx + 8]
mov edi, dword [ebx + 0xc]
mov dword [ebp - 0x1d0], eax
movzx eax, word [ebx + 0xa]
mov dword [ebp - 0x1dc], eax
mov eax, dword [esi + 0x122]
cmp edi, eax
jne case.0x431826.275
mov ebx, dword [sym.imp.USER32.dll_GetScrollInfo]
lea ecx, [ebp - 0x194]
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0x17c], 0
push 2
movdqu xmmword [ebp - 0x194], xmm0
push eax
movq qword [ebp - 0x184], xmm0
mov dword [ebp - 0x194], 0x1c
mov dword [ebp - 0x190], 7
call ebx
mov eax, dword [ebp - 0x1d0]
cmp eax, 5
ja case.default.0x4319f9
jmp dword [eax*4 + 0x432688]
mov eax, dword [ebp - 0x180]
push 1
add eax, 5
push eax
push 2
push edi
mov dword [ebp - 0x180], eax
call dword [sym.imp.USER32.dll_SetScrollPos]
test eax, eax
jne case.default.0x4319f9
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp case.default.0x4319f9
mov eax, dword [ebp - 0x180]
sub eax, 5
mov dword [ebp - 0x180], eax
jmp 0x431a67
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x180], eax
jmp 0x431a67
mov eax, dword [ebp - 0x180]
add eax, dword [ebp - 0x184]
mov dword [ebp - 0x180], eax
jmp 0x431a67
mov eax, dword [ebp - 0x1dc]
cwde
push 1
push eax
push 2
push edi
call dword [sym.imp.USER32.dll_SetScrollPos]
lea eax, [ebp - 0x194]
mov dword [ebp - 0x17c], 0
push eax
xorps xmm0, xmm0
push 2
push dword [esi + 0x122]
movdqu xmmword [ebp - 0x194], xmm0
mov dword [ebp - 0x194], 0x1c
movq qword [ebp - 0x184], xmm0
mov dword [ebp - 0x190], 7
call ebx
mov eax, dword [ebp - 0x180]
mov ecx, esi
dec eax
push eax
call fcn.00437cf0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp dword [esi + 0x64], 0
je case.0x431826.275
cmp dword [esi + 0xa0], 0
je case.0x431826.275
movzx eax, word [ebx + 8]
mov dword [ebp - 0x1d0], eax
movzx eax, word [ebx + 0xa]
cmp eax, 0xffff
jne 0x431b28
cmp dword [ebx + 0xc], 0
jne 0x431b28
push 0x4857e2
mov ecx, esi
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
test al, al
jns case.0x431826.275
lea eax, [ebp - 0x1d0]
push eax
lea eax, [ebp - 0x1dc]
push eax
lea ecx, [esi + 0x106]
call fcn.00438890
mov eax, dword [ebp - 0x1dc]
cmp eax, dword [esi + 0x106]
je 0x431b74
push dword [eax + 0x14]
mov ecx, esi
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
push 0x100
lea eax, [ebp - 0x104]
push 0
push eax
call fcn.00453c50
movzx eax, word [ebx + 8]
add esp, 0xc
cmp eax, 0xd54
jg case.default.0x431bae
je 0x431cf2
lea ecx, [eax - 0x88]
cmp ecx, 3
ja case.default.0x431bae
jmp dword [ecx*4 + 0x4326a0]
mov eax, dword [0x488d54]
mov ecx, esi
movdqu xmm0, xmmword [str.Display_Xebra_help_contents.]
mov dword [ebp - 0xec], eax
mov al, byte [0x488d58]
mov byte [ebp - 0xe8], al
lea eax, [ebp - 0x104]
movdqu xmmword [ebp - 0x104], xmm0
push eax
movq xmm0, qword [0x488d4c]
movq qword [ebp - 0xf4], xmm0
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
movdqu xmm0, xmmword [str.Display_help_for_the_current_window.]
mov eax, dword [0x488d7c]
mov ecx, esi
mov dword [ebp - 0xe4], eax
mov al, byte [0x488d80]
movdqu xmmword [ebp - 0x104], xmm0
mov byte [ebp - 0xe0], al
lea eax, [ebp - 0x104]
movdqu xmm0, xmmword [0x488d6c]
push eax
movdqu xmmword [ebp - 0xf4], xmm0
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
movdqu xmm0, xmmword [str.Display_system_help_introduction.]
mov ax, word [0x488da4]
mov ecx, esi
mov word [ebp - 0xe4], ax
lea eax, [ebp - 0x104]
movdqu xmmword [ebp - 0x104], xmm0
push eax
movdqu xmm0, xmmword [0x488d94]
movdqu xmmword [ebp - 0xf4], xmm0
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
movdqu xmm0, xmmword [str.Display_the_About_Xebra_dialog.]
lea eax, [ebp - 0x104]
mov ecx, esi
push eax
movdqu xmmword [ebp - 0x104], xmm0
movdqu xmm0, xmmword [0x488dec]
movdqu xmmword [ebp - 0xf4], xmm0
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
movdqu xmm0, xmmword [str.Generate_a_support_enhancement_request_document.]
mov al, byte [0x488dd8]
mov ecx, esi
mov byte [ebp - 0xd4], al
lea eax, [ebp - 0x104]
movdqu xmmword [ebp - 0x104], xmm0
push eax
movdqu xmm0, xmmword [0x488db8]
movdqu xmmword [ebp - 0xf4], xmm0
movdqu xmm0, xmmword [0x488dc8]
movdqu xmmword [ebp - 0xe4], xmm0
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
push 0xff
lea ecx, [ebp - 0x104]
push ecx
push eax
push dword [esi + 0xac]
call dword [sym.imp.USER32.dll_LoadStringA]
lea eax, [ebp - 0x104]
mov ecx, esi
push eax
call fcn.00438670
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 8]
cmp eax, 0xf060
jne 0x431db8
cmp dword [esi + 0x8c], 0
jne case.0x431826.275
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 0xf020
jne 0x431e5a
cmp dword [esi + 0xc], 0
mov dword [esi + 0xa8], 1
je 0x431e0b
push 6
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [ebx + 0xc]
push dword [ebx + 8]
push 0x112
push dword [esi + 0xc]
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp dword [0x4ad3a8], 1
jne 0x431e36
push 0
mov ecx, esi
call fcn.004386b0
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
push 6
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_ShowWindow]
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 0xf120
jne case.0x431826.275
push 1
mov ecx, esi
mov dword [esi + 0xa8], 0
call fcn.004386b0
mov eax, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x1d0], ecx
cmp dword [eax + 0x2c], ecx
jle 0x431ec8
mov eax, dword [esi]
mov eax, dword [eax + 0x28]
mov edx, dword [eax + ecx*4]
mov eax, dword [edx + 0xc]
cmp eax, dword [esi + 0x60]
jne 0x431eba
cmp dword [edx + 0xa8], 1
jne 0x431eba
push dword [ebx + 0xc]
push dword [ebx + 8]
push 0x112
push dword [edx + 0x60]
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x1d0]
mov eax, dword [esi]
inc ecx
mov dword [ebp - 0x1d0], ecx
cmp ecx, dword [eax + 0x2c]
jl 0x431e87
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x16e]
mov dword [ebp - 0x1d0], eax
test eax, eax
je case.0x431826.275
mov ecx, dword [ebx + 8]
mov eax, ecx
shr eax, 2
and eax, 1
push edi
push edx
push eax
mov eax, ecx
shr eax, 1
and eax, 1
push eax
mov eax, ecx
shr eax, 4
and eax, 1
push eax
mov eax, ecx
shr ecx, 3
and eax, 1
and ecx, 1
push eax
movzx eax, word [ebx + 0xe]
push ecx
push eax
movzx eax, word [ebx + 0xc]
push eax
push esi
call dword [ebp - 0x1d0]
add esp, 0x28
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x162]
mov dword [ebp - 0x1d0], eax
test eax, eax
je case.0x431826.275
mov ecx, dword [ebx + 8]
mov eax, ecx
shr eax, 2
and eax, 1
push edi
push edx
push eax
mov eax, ecx
shr eax, 1
and eax, 1
push eax
mov eax, ecx
shr eax, 4
and eax, 1
push eax
mov eax, ecx
shr ecx, 3
and eax, 1
and ecx, 1
push eax
movzx eax, word [ebx + 0xe]
push ecx
push eax
movzx eax, word [ebx + 0xc]
push eax
push esi
call dword [ebp - 0x1d0]
add esp, 0x28
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x166]
mov dword [ebp - 0x1d0], eax
test eax, eax
je case.0x431826.275
mov ecx, dword [ebx + 8]
mov eax, ecx
shr eax, 2
and eax, 1
push edi
push edx
push eax
mov eax, ecx
shr eax, 1
and eax, 1
push eax
mov eax, ecx
shr eax, 4
and eax, 1
push eax
mov eax, ecx
shr ecx, 3
and eax, 1
and ecx, 1
push eax
movzx eax, word [ebx + 0xe]
push ecx
push eax
movzx eax, word [ebx + 0xc]
push eax
push esi
call dword [ebp - 0x1d0]
add esp, 0x28
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x16a]
mov dword [ebp - 0x1d0], eax
test eax, eax
je case.0x431826.275
mov ecx, dword [ebx + 8]
mov eax, ecx
shr eax, 2
and eax, 1
push edi
push edx
push eax
mov eax, ecx
shr eax, 1
and eax, 1
push eax
mov eax, ecx
shr eax, 4
and eax, 1
push eax
mov eax, ecx
shr ecx, 3
and eax, 1
and ecx, 1
push eax
movzx eax, word [ebx + 0xe]
push ecx
push eax
movzx eax, word [ebx + 0xc]
push eax
push esi
call dword [ebp - 0x1d0]
add esp, 0x28
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x1d0], 0
mov dword [ebx], eax
mov ecx, esi
lea eax, [ebp - 0x1d0]
push eax
push edx
push edi
push ebx
call fcn.0042f9b0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
mov eax, dword [esi + 0x74]
mov dword [ebp - 0x1dc], ecx
sub eax, dword [ecx]
mov ebx, dword [ecx + 0xc]
sub ebx, dword [esi + 0x80]
sub eax, dword [esi + 0x7c]
sub ebx, dword [ecx + 4]
add eax, dword [ecx + 8]
xor ecx, ecx
add ebx, dword [esi + 0x78]
mov dword [ebp - 0x16c], edx
mov dword [ebp - 0x1e4], ecx
cmp dword [esi + 0x5c], ecx
jle 0x4321ce
mov edx, dword [sym.imp.USER32.dll_GetWindowRect]
mov edi, eax
jmp 0x432100
mov eax, dword [esi + 0x38]
mov eax, dword [eax + ecx*4]
cmp dword [eax + 0x168], 1
jne 0x432153
lea ecx, [ebp - 0x188]
push ecx
push dword [eax + 0x18]
call edx
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x188]
add ecx, edi
mov eax, ecx
mov dword [ebp - 0x180], ecx
sub eax, edx
cmp eax, 0x64
jge 0x432147
sub ecx, edi
mov edi, edx
sub edi, ecx
mov dword [ebp - 0x180], ecx
add edi, 0x64
mov edx, dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [ebp - 0x1e4]
mov eax, dword [esi + 0x38]
mov eax, dword [eax + ecx*4]
cmp dword [eax + 0x16c], 1
jne 0x4321a0
lea ecx, [ebp - 0x188]
push ecx
push dword [eax + 0x18]
call edx
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x184]
add ecx, ebx
mov eax, ecx
mov dword [ebp - 0x17c], ecx
sub eax, edx
cmp eax, 0x64
jge 0x43219a
sub ecx, ebx
mov ebx, edx
sub ebx, ecx
mov dword [ebp - 0x17c], ecx
add ebx, 0x64
mov ecx, dword [ebp - 0x1e4]
mov edx, dword [sym.imp.USER32.dll_GetWindowRect]
inc ecx
mov dword [ebp - 0x1e4], ecx
cmp ecx, dword [esi + 0x5c]
jl 0x432100
mov edx, dword [ebp - 0x16c]
mov dword [ebp - 0x1d8], edi
mov edi, dword [ebp - 0x1d0]
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [esi + 0x7c]
sub ecx, dword [esi + 0x74]
add ecx, eax
mov eax, dword [esi + 0x80]
sub eax, dword [esi + 0x78]
add eax, ebx
mov dword [ebp - 0x1d0], ecx
mov dword [ebp - 0x1d8], eax
cmp edx, 2
je 0x4321fc
cmp edx, 5
je 0x4321fc
cmp edx, 8
jne 0x432211
mov ecx, dword [ebp - 0x1dc]
mov ebx, dword [ebp - 0x1d0]
mov eax, dword [ecx]
add eax, ebx
mov dword [ecx + 8], eax
jmp 0x43221d
mov ecx, dword [ebp - 0x1dc]
mov ebx, dword [ebp - 0x1d0]
cmp edx, 6
je 0x43222c
cmp edx, 8
je 0x43222c
cmp edx, 7
jne 0x43223c
mov eax, dword [ecx + 4]
mov esi, dword [ebp - 0x1d8]
add eax, esi
mov dword [ecx + 0xc], eax
jmp 0x432242
mov esi, dword [ebp - 0x1d8]
cmp edx, 1
je 0x432251
cmp edx, 7
je 0x432251
cmp edx, 4
jne 0x432258
mov eax, dword [ecx + 8]
sub eax, ebx
mov dword [ecx], eax
cmp edx, 3
je 0x432267
cmp edx, 4
je 0x432267
cmp edx, 5
jne 0x43226f
mov eax, dword [ecx + 0xc]
sub eax, esi
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 1
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 0x216
je 0x4323cd
cmp eax, 0x8064
jne case.0x431826.275
mov eax, dword [ebx + 0xc]
cmp eax, 0x203
jne 0x4322d9
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_IsWindowVisible]
push 1
mov ecx, esi
call fcn.004386b0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 0x204
jne case.0x431826.275
lea eax, [ebp - 0x1e0]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
call dword [sym.imp.USER32.dll_CreatePopupMenu]
push dword [esi + 0x60]
mov edi, eax
mov dword [ebp - 0x1d8], edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
push str.Show_Xebra_Server
push 0x64
test eax, eax
je 0x432329
push 3
push edi
mov edi, dword [sym.imp.USER32.dll_AppendMenuA]
call edi
push str.Hide_Xebra_Server_Interface
push 0x65
push 0
jmp 0x43233d
push 0
push edi
mov edi, dword [sym.imp.USER32.dll_AppendMenuA]
call edi
push str.Hide_Xebra_Server_Interface
push 0x65
push 3
push dword [ebp - 0x1d8]
call edi
mov edi, dword [ebp - 0x1d8]
push 0
push dword [esi + 0x60]
push dword [ebp - 0x1dc]
push dword [ebp - 0x1e0]
push 0x100
push edi
call dword [sym.imp.USER32.dll_TrackPopupMenuEx]
push edi
mov dword [ebp - 0x1d0], eax
call dword [sym.imp.USER32.dll_DestroyMenu]
mov eax, dword [ebp - 0x1d0]
test eax, eax
je case.0x431826.275
sub eax, 0x64
je 0x43238e
dec eax
jne case.0x431826.279
push eax
jmp 0x432390
push 1
mov ecx, esi
call fcn.004386b0
cmp dword [esi + 0xb0], 1
jne case.0x431826.275
cmp word [ebx + 0xe], 0
jne case.0x431826.275
cmp word [ebx + 0xc], 0
jne case.0x431826.275
push dword [ebx + 8]
push esi
call fcn.0040ef60
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc
xor ebx, ebx
cmp dword [esi + 0x4c], ebx
jle 0x4323f1
mov eax, dword [esi + 0x28]
mov eax, dword [eax + ebx*4]
mov ecx, dword [eax + 0x13d]
test ecx, ecx
je 0x4323eb
push 0
call fcn.0040e920
inc ebx
cmp ebx, dword [esi + 0x4c]
jl 0x4323d4
mov eax, dword [ebp - 0x1d4]
mov dword [eax], 0
mov dword [edi], 1
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00452f44
mov esp, ebp
pop ebp
ret 0xc