Function at 0x45a6ac
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffef8
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
cmp dword [eax], 0xf
jne 0x45a6db
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4dfa34]
call fcn.00493f1c
test al, al
jne 0x45a710
lea edx, [ebp - 0x108]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov eax, dword [eax]
call fcn.00493ce0
lea eax, [ebp - 0x108]
mov edx, 0x45ad84
xor ecx, ecx
mov cl, byte [eax]
inc ecx
call fcn.004935dc
jne 0x45a71c
mov eax, dword [ebp - 8]
cmp dword [eax], 0x85
jne 0x45a71c
mov eax, dword [ebp - 8]
mov dword [eax + 0xc], 1
jmp 0x45a728
mov edx, dword [ebp - 8]
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x44]
call dword [ebx + 0x40]
mov eax, dword [ebp - 4]
cmp dword [eax + 0x48], 0
je 0x45a8b1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x48]
cmp byte [eax + 0x30], 0
jne 0x45a8b1
xor eax, eax
push ebp
push 0x45a89d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
mov dword [eax + 0xc], 1
mov eax, dword [ebp - 4]
cmp dword [eax + 0x30], 0
je 0x45a888
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x40]
mov dword [eax + 0x38], ecx
mov ecx, dword [edx + 0x44]
mov dword [eax + 0x3c], ecx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x49d0ac]
call fcn.00493f1c
test al, al
je 0x45a7a5
mov eax, dword [ebp - 4]
mov dl, byte [eax + 0x4c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
call fcn.004ea1e0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4f2efc]
call fcn.00493f1c
test al, al
je 0x45a7cb
mov eax, dword [ebp - 4]
mov dl, byte [eax + 0x4d]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
call fcn.004a21f0
lea edx, [ebp - 0x108]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov eax, dword [eax]
call fcn.00493ce0
lea eax, [ebp - 0x108]
mov edx, 0x45ad84
xor ecx, ecx
mov cl, byte [eax]
inc ecx
call fcn.004935dc
jne 0x45a806
mov eax, dword [ebp - 4]
mov dl, byte [eax + 0x4c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
call fcn.004ea1e0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4a0800]
call fcn.00493f1c
test al, al
je 0x45a82c
mov eax, dword [ebp - 4]
mov dl, byte [eax + 0x4d]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
call fcn.004a6be4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4f5414]
call fcn.00493f1c
test al, al
je 0x45a852
mov eax, dword [ebp - 4]
mov dl, byte [eax + 0x4d]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
call fcn.00507dc0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4f2220]
call fcn.00493f1c
test al, al
je 0x45a878
mov eax, dword [ebp - 4]
mov dl, byte [eax + 0x4d]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
call fcn.004ff398
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x30], edx
mov eax, dword [ebp - 4]
call fcn.00493d90
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45ad7c
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
mov dword [edx + 0x58], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax]
cmp eax, 0x201
jg 0x45a967
je 0x45ab74
cmp eax, 0xb8
jg 0x45a91f
je 0x45a9fa
cmp eax, 0xf
jg 0x45a908
je 0x45aa77
sub eax, 2
je 0x45aa13
sub eax, 5
je 0x45ac1d
dec eax
je 0x45ac31
jmp 0x45ad7c
sub eax, 0x47
je 0x45ad2c
sub eax, 0x3e
je 0x45ad35
jmp 0x45ad7c
cmp eax, 0x100
jg 0x45a94c
je 0x45abc4
sub eax, 0xf0
je 0x45ac7a
dec eax
je 0x45ac66
sub eax, 2
je 0x45ad22
jmp 0x45ad7c
sub eax, 0x101
je 0x45abf5
sub eax, 0xff
je 0x45ab26
jmp 0x45ad7c
cmp eax, 0xb012
jg 0x45a9bf
je 0x45acab
cmp eax, 0xb009
jg 0x45a9a3
je 0x45aa06
sub eax, 0x202
je 0x45ab88
dec eax
je 0x45acc4
sub eax, 0xae04
je 0x45ac45
jmp 0x45ad7c
sub eax, 0xb00c
je 0x45ac8e
add eax, 0xfffffffc
sub eax, 2
jb 0x45acb8
jmp 0x45ad7c
cmp eax, 0xb01b
jg 0x45a9e3
je 0x45ac52
sub eax, 0xb013
je 0x45aa8b
dec eax
je 0x45aada
jmp 0x45ad7c
sub eax, 0xb034
je 0x45a9fa
sub eax, 0xddc
je 0x45ad2c
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x34], 1
jmp 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x34], 0
jne 0x45ad7c
xor eax, eax
push ebp
push 0x45aa68
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp dword [eax + 0x30], 0
je 0x45aa5b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x40]
mov dword [eax + 0x38], ecx
mov ecx, dword [edx + 0x44]
mov dword [eax + 0x3c], ecx
mov eax, dword [ebp - 4]
mov byte [eax + 0x34], 0
mov eax, dword [ebp - 4]
call fcn.00493d90
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x34], 0
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4dfa34]
call fcn.00493f1c
test al, al
je 0x45aacd
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4dfa34]
call fcn.00493f1c
test al, al
je 0x45ab19
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [eax]
call dword [edx + 0x7c]
jmp 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x45ad7c
lea edx, [ebp - 0x108]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov eax, dword [eax]
call fcn.00493ce0
lea eax, [ebp - 0x108]
mov edx, 0x45ad98
xor ecx, ecx
mov cl, byte [eax]
inc ecx
call fcn.004935dc
jne 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x36], 1
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x36], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4dfa34]
call fcn.00493f1c
test al, al
je 0x45abb7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [eax]
call dword [edx + 0x80]
jmp 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 8]
cmp dword [eax + 4], 0x20
jne 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x37], 1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x38], 0
jne 0x45abe9
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 1
jmp 0x45ad7c
mov eax, dword [ebp - 8]
cmp dword [eax + 4], 0x20
jne 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x37], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 0
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 1
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 0
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 0
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 0
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 0
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 8]
cmp dword [eax + 4], 0
jne 0x45ac9e
mov eax, dword [ebp - 4]
mov byte [eax + 0x35], 0
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x34], 1
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x49efc0]
call fcn.00493f1c
test al, al
jne 0x45ad03
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x5145a4]
call fcn.00493f1c
test al, al
jne 0x45ad03
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x49f850]
call fcn.00493f1c
test al, al
je 0x45ad7c
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
push eax
mov ecx, dword [ebp - 8]
mov ecx, dword [ecx + 4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, 0x201
call fcn.004e4a28
jmp 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintControlXP_qqrv
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov byte [eax + 0x34], 1
jmp 0x45ad7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4a0800]
call fcn.00493f1c
test al, al
jne 0x45ad74
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4f2220]
call fcn.00493f1c
test al, al
jne 0x45ad74
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [0x4a0800]
call fcn.00493f1c
test al, al
je 0x45ad7c
mov eax, dword [ebp - 4]
call sym.DWL2Main.exe__Mycontrol_TControlSubClass_PaintNCWinControl_qqrv
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret