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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
mov eax, dword [0xc940a0]
xor eax, esp
mov dword [esp + 0x88], eax
mov edx, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0x14]
push esi
mov esi, dword [ebp + 0xc]
mov dword [esp + 8], edx
push edi
mov edi, ecx
mov dword [esp + 0x10], edi
cmp esi, 0x3d
jne 0xa67406
cmp ebx, 0xfffffffc
je 0xa67478
push ebx
push dword [ebp + 0x10]
push esi
push dword [esp + 0x18]
call dword [sym.imp.ext_ms_win_rtcore_ntuser_window_ext_l1_1_0.dll_DefWindowProcW]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x88]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
cmp esi, 0x100
ja 0xa674a8
je 0xb26cc7
lea eax, [esi - 1]
cmp eax, 0x83
ja case.0xa6762c.515
movzx eax, byte [eax + 0xa677c4]
jmp dword [eax*4 + 0xa67790]
cmp esi, 0x400
jb 0xa673e0
cmp esi, 0x7fff
ja 0xa673e0
mov eax, dword [edi]
push ebx
push dword [ebp + 0x10]
mov eax, dword [eax + 0x74]
mov dword [esp + 0x1c], eax
push esi
push edx
cmp eax, fcn.00a8b3a0
jne 0xa6776a
mov ecx, edi
call fcn.00a8b3a0
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x88]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [edi]
push dword [ebp + 0x10]
mov esi, dword [eax + 0x78]
cmp esi, fcn.00a3ce10
jne 0xb26dcb
call fcn.00a3ce10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x88]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
cmp esi, 0x201
ja 0xa67614
je 0xb26d00
mov eax, esi
sub eax, 0x101
je 0xb26cea
sub eax, 0x12
je 0xa675ea
sub eax, 0xed
jne case.0xa6762c.515
jmp 0xb26cdd
lea eax, [esp + 0x50]
push eax
push dword [edi + 4]
call dword [sym.imp.ext_ms_win_ntuser_draw_l1_1_0.dll_BeginPaint]
test eax, eax
je 0xa6754f
lea ecx, [esp + 0x10]
push ecx
push 0
push 2
lea ecx, [esp + 0x64]
push ecx
push eax
call dword [sym.imp.UxTheme.dll_BeginBufferedPaint]
mov esi, eax
test esi, esi
je 0xa67541
push 0
push dword [esp + 0x14]
push dword [edi + 4]
call dword [sym.imp.UxTheme.dll_DrawThemeParentBackground]
mov eax, dword [edi]
push dword [esp + 0x10]
mov ebx, dword [eax + 0x54]
cmp ebx, fcn.00a735c0
jne 0xb26bdd
mov ecx, edi
call fcn.00a735c0
push 1
push esi
call dword [sym.imp.UxTheme.dll_EndBufferedPaint]
lea eax, [esp + 0x50]
push eax
push dword [edi + 4]
call dword [sym.imp.ext_ms_win_ntuser_draw_l1_1_0.dll_EndPaint]
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x88]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [ecx + 0x24]
mov edi, dword [edi + 0x48]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
push edx
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
call dword [sym.imp.ext_ms_win_rtcore_ntuser_window_ext_l1_1_0.dll_GetWindowRect]
mov eax, dword [edi]
push edi
mov edi, dword [eax + 0x1c]
mov ecx, edi
call dword [0xc99200]
call edi
mov ecx, dword [esp + 0x14]
cmp ecx, 3
jne 0xb26b9b
add dword [esp + 0x24], eax
mov eax, ebx
movsx ecx, bx
shr eax, 0x10
cwde
push eax
push ecx
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.api_ms_win_ntuser_rectangle_l1_1_0.dll_PtInRect]
test eax, eax
je 0xa6770c
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
jmp case.0xa6762c.515
mov eax, dword [ebp + 0x10]
push eax
call fcn.00a47cad
jmp 0xa673e0
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x88]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
lea eax, [esi - 0x202]
cmp eax, 0xa1
ja case.0xa6762c.515
movzx eax, byte [eax + 0xa67858]
jmp dword [eax*4 + 0xa67848]
cmp dword [edi + 0x3c], 0
je case.0xa6762c.515
mov eax, dword [ebx + 0x18]
and eax, 3
cmp al, 3
je case.0xa6762c.515
lea eax, [esp + 0x30]
mov dword [esp + 0x30], 0
push eax
push dword [edi + 4]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
call dword [sym.imp.ext_ms_win_rtcore_ntuser_window_ext_l1_1_0.dll_GetWindowRect]
test eax, eax
je 0xb26c85
mov ecx, dword [edi + 0x3c]
mov dword [esp + 0x14], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x18], eax
cmp eax, fcn.00a8b8b0
je 0xa67726
cmp eax, fcn.00ab33a0
je 0xa67757
lea ecx, [esp + 0x30]
push ecx
mov ecx, eax
call dword [0xc99200]
mov ecx, dword [esp + 0x18]
call dword [esp + 0x1c]
mov edx, dword [esp + 0xc]
jmp case.0xa6762c.515
mov edx, ebx
mov ecx, 0x1a
call fcn.00a83558
test al, al
je 0xa6754f
jmp 0xb26bee
mov eax, dword [edi]
mov ecx, ebx
shr ecx, 0x10
push ecx
movzx edx, bx
mov edi, dword [eax + 0x7c]
mov ecx, edi
mov eax, dword [ebp + 0x10]
push edx
push eax
call dword [0xc99200]
mov ecx, dword [esp + 0x1c]
call edi
test al, al
je 0xa675dd
jmp 0xa6754f
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x88]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
lea eax, [esp + 0x30]
push eax
call fcn.00a8b8b0
mov edx, dword [esp + 0xc]
jmp case.0xa6762c.515
call fcn.00a8944e
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x88]
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
lea eax, [esp + 0x30]
push eax
call fcn.00ab33a0
mov edx, dword [esp + 0xc]
jmp case.0xa6762c.515
mov ecx, eax
call dword [0xc99200]
mov ecx, edi
call dword [esp + 0x24]
mov ecx, dword [esp + 0x94]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00ab3c50
mov esp, ebp
pop ebp
ret 0x10
sub ecx, 0
je 0xb26bc0
sub ecx, 1
je 0xb26bb7
sub ecx, 1
jne 0xa675bf
add dword [esp + 0x20], eax
jmp 0xa675bf
sub dword [esp + 0x2c], eax
jmp 0xa675bf
sub dword [esp + 0x28], eax
jmp 0xa675bf
test byte [edi + 0xc], 1
je case.0xa6762c.515
mov eax, 3
jmp 0xa673ef
mov ecx, ebx
call dword [0xc99200]
mov ecx, edi
call ebx
jmp 0xa67538
push 0
push 0
push dword [edi + 4]
call dword [sym.imp.ext_ms_win_ntuser_draw_l1_1_0.dll_InvalidateRect]
jmp 0xa6754f
movsx eax, bx
mov dword [esp + 0x18], eax
mov eax, ebx
shr eax, 0x10
cwde
mov dword [esp + 0x10], eax
cmp ebx, 0xffffffff
jne 0xb26c58
lea eax, [esp + 0x40]
mov dword [esp + 0x14], 1
push eax
push dword [edi + 4]
call dword [sym.imp.ext_ms_win_rtcore_ntuser_window_ext_l1_1_0.dll_GetWindowRect]
test eax, eax
je 0xb26c61
mov eax, dword [esp + 0x48]
sub eax, dword [esp + 0x40]
cdq
sub eax, edx
sar eax, 1
add eax, dword [esp + 0x40]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x4c]
sub eax, dword [esp + 0x44]
cdq
sub eax, edx
sar eax, 1
add eax, dword [esp + 0x44]
jmp 0xb26c65
call fcn.00b7c5bb
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x10]
push eax
push dword [esp + 0x1c]
mov ecx, edi
push dword [esp + 0x1c]
call fcn.00b7c662
cmp eax, 0x80004001
je 0xa675e1
jmp 0xa6754f
mov ecx, dword [ebp + 4]
mov edx, 0x473
push 0x9fa150
call fcn.00b6203c
jmp 0xa675e1
cmp esi, 7
sete al
movzx eax, al
push eax
call fcn.00b7cc33
xor eax, eax
jmp 0xa673ef
push ebx
call fcn.00b7cbc7
jmp 0xa673ef
call fcn.00b7c6d3
jmp 0xa675e1
mov eax, dword [ebp + 0x10]
push eax
call fcn.00b7c6fd
test eax, eax
js 0xa673e0
jmp 0xa6754f
push ebx
call fcn.00b7cacd
xor eax, eax
jmp 0xa673ef
mov eax, dword [ebp + 0x10]
push eax
call fcn.00b7c82d
test eax, eax
js 0xa673e0
jmp 0xa6754f
call fcn.00b7c5bb
push eax
mov ecx, edi
call fcn.00b7c8e9
xor eax, eax
jmp 0xa673ef
test byte [edi + 0xc], 4
je case.0xa6762c.515
lea eax, [esp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
movzx eax, ax
push eax
call dword [sym.imp.api_ms_win_rtcore_ntuser_wmpointer_l1_1_0.dll_GetPointerType]
test eax, eax
je 0xa675e1
cmp dword [esp + 0x14], 2
jne 0xa675e1
cmp esi, 0x246
jne 0xb26d59
push 3
mov ecx, edi
call fcn.00b7c8e9
jmp 0xa6754f
cmp esi, 0x247
jne 0xa6754f
movsx eax, bx
mov dword [esp + 0x18], eax
shr ebx, 0x10
movsx eax, bx
push 1
mov dword [esp + 0x20], eax
lea eax, [esp + 0x1c]
push eax
push dword [edi + 4]
push 0
call dword [sym.imp.ext_ms_win_rtcore_ntuser_window_ext_l1_1_0.dll_MapWindowPoints]
movzx ecx, word [esp + 0x1c]
movzx eax, word [esp + 0x18]
push 0
shl ecx, 0x10
or ecx, eax
push 3
push ecx
mov ecx, edi
call fcn.00b7c93f
jmp 0xa6754f
call fcn.00b7ca08
xor eax, eax
jmp 0xa673ef
push 0
call fcn.00b7c5bb
push eax
push ebx
mov ecx, edi
call fcn.00b7c93f
xor eax, eax
jmp 0xa673ef
mov ecx, esi
call dword [0xc99200]
mov ecx, edi
call esi
jmp 0xa673ef