Function at 0x684c3c
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff84
push ebx
push esi
push edi
mov ebx, edx
mov dword [ebp - 0x14], eax
mov esi, dword [ebx]
mov eax, esi
cmp eax, 0xa3
jg 0x684ca1
je 0x684e0b
cmp eax, 0x84
jg 0x684c88
je 0x684cf1
sub eax, 5
je 0x684d36
sub eax, 0xf
je 0x684d7a
sub eax, 0x6f
je 0x684dee
jmp 0x685334
sub eax, 0x85
je 0x685072
sub eax, 0x1c
je 0x684e0b
jmp 0x685334
cmp eax, 0x1af
jg 0x684cd3
je 0x68530d
add eax, 0xfffffeec
sub eax, 2
jb 0x684dce
sub eax, 0x6a
je 0x684dce
sub eax, 0x2e
je 0x68532a
jmp 0x685334
sub eax, 0x202
je 0x684e4f
add eax, 0xfffffeeb
sub eax, 2
jb 0x684f20
jmp 0x685334
mov eax, dword [ebx + 8]
push eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call fcn.0067ae60
mov esi, eax
mov dword [ebx + 0xc], esi
test esi, esi
jne 0x68534f
mov eax, dword [ebx + 4]
push eax
lea eax, [ebx + 8]
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov ecx, 0x84
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacMainWnd_CallPrevWndProc_qqrxp6HWND__xixiri
mov dword [ebx + 0xc], eax
jmp 0x68534f
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
mov byte [eax + 0xad], 1
mov eax, dword [ebx + 4]
push eax
lea eax, [ebx + 8]
push eax
mov ecx, dword [ebx]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacMainWnd_CallPrevWndProc_qqrxp6HWND__xixiri
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x14]
cmp byte [eax + 6], 0
jne 0x68534f
mov dl, 1
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_UpdateScrolls_qqrpx22Acsbutils_TacScrollWndxo
jmp 0x68534f
mov edi, dword [ebx + 4]
test edi, edi
je 0x684db1
mov dword [ebx + 0xc], 1
push 0
lea edx, [ebp - 0x7c]
mov eax, dword [ebp - 0x14]
add eax, 0x3c
call sym.StartupControl.exe__Acntutils_MkRect_qqrrx7tagSIZE
lea edx, [ebp - 0x7c]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0xbc]
mov eax, dword [ebx + 4]
call sym.StartupControl.exe__Sgraphutils_FillDC_qqrp5HDC__rx11Types_TRectx15Graphics_TColori
jmp 0x68534f
push edi
lea eax, [ebx + 8]
push eax
mov ecx, esi
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacMainWnd_CallPrevWndProc_qqrxp6HWND__xixiri
mov dword [ebx + 0xc], eax
jmp 0x68534f
mov eax, dword [ebx + 4]
push eax
lea eax, [ebx + 8]
push eax
mov ecx, esi
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacMainWnd_CallPrevWndProc_qqrxp6HWND__xixiri
mov dword [ebx + 0xc], eax
jmp 0x68534f
mov eax, dword [ebx + 8]
push eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call fcn.00679d04
mov dword [ebx + 0xc], eax
jmp 0x68534f
mov eax, dword [ebx + 8]
push eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call fcn.0067ae60
mov esi, eax
mov dword [ebx + 4], esi
mov eax, esi
add eax, 0xfffffffa
sub eax, 2
jae 0x68534f
mov eax, dword [ebx + 8]
push eax
mov ecx, esi
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call fcn.0067b2b4
mov dword [ebx + 0xc], eax
jmp 0x68534f
mov eax, dword [ebp - 0x14]
add eax, 0x1c
push eax
mov eax, dword [ebp - 0x14]
add eax, 0x3c
push eax
mov eax, dword [ebp - 0x14]
add eax, 0x44
push eax
mov eax, dword [ebp - 0x14]
lea ecx, [eax + 0xc]
mov eax, dword [ebp - 0x14]
lea edx, [eax + 0x34]
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
call sym.StartupControl.exe__Acsbutils_InitCtrlData_qqrp6HWND__rp6HWND__r11Types_TRectt3r7tagSIZEr12Types_TPoint
mov eax, dword [ebx + 8]
mov edi, eax
movsx edx, word [ebx + 8]
mov dword [ebp - 0x24], edx
shr eax, 0x10
movsx eax, ax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0xc]
add dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x10]
add dword [ebp - 0x20], eax
movzx eax, word [ebp - 0x24]
movzx edx, word [ebp - 0x20]
shl edx, 0x10
or eax, edx
mov dword [ebx + 8], eax
mov eax, dword [ebx + 8]
push eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call fcn.0067ae60
mov esi, eax
mov dword [ebx + 4], esi
mov eax, esi
sub eax, 2
jb 0x684f04
mov eax, dword [ebx + 8]
push eax
mov ecx, esi
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call fcn.0067b588
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0xca], 0
je 0x68534f
call sub.USER32.DLL_ReleaseCapture
jmp 0x68534f
mov eax, edi
mov dword [ebx + 8], eax
push eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call fcn.0067b588
jmp 0x68534f
cmp dword [ebx + 4], 0
je 0x685334
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
push eax
call sub.USER32.DLL_IsWindowVisible
test eax, eax
je 0x685334
push ebp
call fcn.00684b1c
pop ecx
mov eax, dword [ebx + 4]
push eax
lea eax, [ebx + 8]
push eax
mov ecx, dword [ebx]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacMainWnd_CallPrevWndProc_qqrxp6HWND__xixiri
mov dword [ebx + 0xc], eax
cmp dword [ebx], 0x318
jne 0x684f81
push 0
xor ecx, ecx
mov edx, 0x18b
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacMainWnd_ProcessMessage_qqruiii
test eax, eax
jne 0x68534f
mov eax, dword [ebx + 4]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0xc]
neg ecx
mov edx, dword [ebp - 0x10]
neg edx
lea eax, [ebp - 0x10]
call fcn.004a7ca8
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0xc8], 0
jne 0x68534f
cmp dword [0x7ae0c0], 0xffffffff
jne 0x685055
push 0
xor ecx, ecx
mov edx, 0x18b
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacMainWnd_ProcessMessage_qqruiii
test eax, eax
jne 0x685011
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 0x5c]
call fcn.00502d6c
call fcn.004fdd24
push eax
lea eax, [ebp - 0x10]
xor edx, edx
call sym.StartupControl.exe__Acntutils_HeightOf_qqrrx11Types_TRectxo
push eax
lea eax, [ebp - 0x10]
xor edx, edx
call sym.StartupControl.exe__Acntutils_WidthOf_qqrrx11Types_TRectxo
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x18]
push eax
call sub.GDI32.DLL_BitBlt
jmp 0x685055
lea eax, [ebp - 0x10]
xor edx, edx
call sym.StartupControl.exe__Acntutils_WidthOf_qqrrx11Types_TRectxo
push eax
lea eax, [ebp - 0x10]
xor edx, edx
call sym.StartupControl.exe__Acntutils_HeightOf_qqrrx11Types_TRectxo
push eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 0x5c]
call fcn.00502d6c
call fcn.004fdd24
push eax
push 0
push 0
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
call sym.StartupControl.exe__Sgraphutils_BitBltBorder_qqrxp5HDC__xixixixit1xixiiiii
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
or ecx, 0xffffffff
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_ac_NCDraw_qqrp22Acsbutils_TacScrollWndp6HWND__ip5HDC__
mov dword [ebx + 0xc], eax
jmp 0x68534f
mov eax, dword [ebp - 0x14]
cmp byte [eax + 6], 0
jne 0x685334
mov eax, dword [ebp - 0x14]
add eax, 0x1c
push eax
mov eax, dword [ebp - 0x14]
add eax, 0x3c
push eax
mov eax, dword [ebp - 0x14]
add eax, 0x44
push eax
mov eax, dword [ebp - 0x14]
lea ecx, [eax + 0xc]
mov eax, dword [ebp - 0x14]
lea edx, [eax + 0x34]
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
call sym.StartupControl.exe__Acsbutils_InitCtrlData_qqrp6HWND__rp6HWND__r11Types_TRectt3r7tagSIZEr12Types_TPoint
push ebp
call fcn.00684b1c
pop ecx
mov eax, dword [ebp - 0x14]
cmp byte [eax + 4], 0
jne 0x6850cb
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
mov ecx, dword [ebp - 0x14]
xor edx, edx
call fcn.006768cc
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
push eax
call sub.USER32.DLL_GetWindowDC
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
push eax
call sub.GDI32.DLL_SaveDC
mov dword [ebp - 0x1c], eax
xor eax, eax
push ebp
push 0x685306
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 0x5c]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 0x5c]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
mov eax, dword [eax + 0x5c]
call fcn.00502d6c
call fcn.004fdd24
push eax
push 0
push 0
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x18]
call sym.StartupControl.exe__Sgraphutils_BitBltBorder_qqrxp5HDC__xixixixit1xixiiiii
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x38]
or ecx, 0xffffffff
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_ac_NCDraw_qqrp22Acsbutils_TacScrollWndp6HWND__ip5HDC__
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0xca], 0
je 0x6852db
mov byte [ebp - 0x3b], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
push eax
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_GetParent
mov edx, eax
lea eax, [ebp - 0x6c]
xor ecx, ecx
call sym.StartupControl.exe__Sgraphutils_GetBGInfo_qqrpx16Sconst_TacBGInfoxuio
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x34]
push eax
call sub.USER32.DLL_GetWindowRect
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x28]
sub edi, dword [eax + 0x18]
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x10]
neg ecx
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0xc]
neg edx
mov eax, dword [ebp - 0x14]
add eax, 0xc
call fcn.004a7ca8
mov ecx, dword [ebp - 0x30]
neg ecx
mov edx, dword [ebp - 0x34]
neg edx
lea eax, [ebp - 0x34]
call fcn.004a7ca8
lea eax, [ebp - 0x34]
xor edx, edx
call sym.StartupControl.exe__Acntutils_HeightOf_qqrrx11Types_TRectxo
push eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x18]
xor eax, eax
call fcn.004a7b3c
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
push eax
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_GetWindowDC
mov ebx, eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x34]
push eax
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_GetWindowRect
mov eax, dword [ebp - 0x14]
push edi
lea esi, [eax + 0x1c]
lea edi, [ebp - 0x34]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
cmp byte [ebp - 0x3c], 2
jne 0x685289
push 0xcc0020
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x14]
add eax, dword [edx + 0x40]
add eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x64]
push eax
mov eax, dword [ebp - 0x6c]
call fcn.00502d6c
call fcn.004fdd24
push eax
lea eax, [ebp - 0x34]
xor edx, edx
call sym.StartupControl.exe__Acntutils_HeightOf_qqrrx11Types_TRectxo
push eax
lea eax, [ebp - 0x34]
xor edx, edx
call sym.StartupControl.exe__Acntutils_WidthOf_qqrrx11Types_TRectxo
push eax
lea eax, [ebp - 0x34]
xor edx, edx
call sym.StartupControl.exe__Acntutils_HeightOf_qqrrx11Types_TRectxo
sub eax, edi
push eax
push 0
push ebx
call sub.GDI32.DLL_BitBlt
jmp 0x6852c8
push 0
lea eax, [ebp - 0x34]
xor edx, edx
call sym.StartupControl.exe__Acntutils_HeightOf_qqrrx11Types_TRectxo
push eax
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x34]
xor edx, edx
call sym.StartupControl.exe__Acntutils_WidthOf_qqrrx11Types_TRectxo
push eax
lea eax, [ebp - 0x34]
xor edx, edx
call sym.StartupControl.exe__Acntutils_HeightOf_qqrrx11Types_TRectxo
mov edx, eax
sub edx, edi
xor eax, eax
pop ecx
call fcn.004a7b3c
lea edx, [ebp - 0x7c]
mov ecx, dword [ebp - 0x68]
mov eax, ebx
call sym.StartupControl.exe__Sgraphutils_FillDC_qqrp5HDC__rx11Types_TRectx15Graphics_TColori
push ebx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
push eax
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_ReleaseDC
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x68534f
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x18]
push eax
call sub.GDI32.DLL_RestoreDC
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x38]
push eax
call sub.USER32.DLL_ReleaseDC
ret
mov eax, dword [ebp - 0x14]
mov byte [eax + 0xc8], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x68]
test eax, eax
je 0x685334
mov byte [eax + 0xad], 1
jmp 0x685334
mov eax, dword [ebp - 0x14]
mov byte [eax + 0xc8], 1
mov edx, ebx
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_TacEditWnd_acWndProc_qqrr17Messages_TMessage
mov eax, dword [ebx]
sub eax, 0x47
jne 0x68534f
mov dl, 1
mov eax, dword [ebp - 0x14]
call sym.StartupControl.exe__Acsbutils_UpdateScrolls_qqrpx22Acsbutils_TacScrollWndxo
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret