Function at 0x43dca3
Capabilities:
Get graphical window text
Identify system language via api
Read .ini file

Disassembly:
push ecx
push ebx
push ebp
push esi
mov esi, dword [esp + 0x14]
push edi
push 2
push 2
push esi
mov dword [0x50a13c], esi
call fcn.0042ca8e
xor ebp, ebp
inc ebp
push ebp
push ebp
push esi
call fcn.0042ca8e
push 7
push 7
push esi
call fcn.0042ca8e
push esi
call dword [sym.imp.USER32.dll_GetMenu]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3e8
push dword [0x50a13c]
mov dword [0x50a140], eax
call esi
push 0x3e9
push dword [0x50a13c]
mov dword [0x50a144], eax
call esi
push 0x3ea
push dword [0x50a13c]
mov dword [0x50a148], eax
call esi
push 0xa08c
push dword [0x50a13c]
mov dword [0x50a14c], eax
call esi
push 0x3fe
push dword [0x50a13c]
mov dword [0x50a150], eax
call esi
push 0xa08d
push dword [0x50a13c]
mov dword [0x50a154], eax
call esi
push 0x3ff
push dword [0x50a13c]
mov dword [0x50a158], eax
call esi
push 0xa08e
push dword [0x50a13c]
mov dword [0x50a15c], eax
call esi
push 0xa08f
push dword [0x50a13c]
mov dword [0x50a160], eax
call esi
push 0xa090
push dword [0x50a13c]
mov dword [0x50a164], eax
call esi
push 0xa091
push dword [0x50a13c]
mov dword [0x50a168], eax
call esi
push 0xa092
push dword [0x50a13c]
mov dword [0x50a16c], eax
call esi
push 0xa093
push dword [0x50a13c]
mov dword [0x50a170], eax
call esi
push 0x400
push dword [0x50a13c]
mov dword [0x50a174], eax
call esi
mov dword [0x50a178], eax
xor edi, edi
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push edi
push edi
push 0x1119
push dword [0x50a144]
call ebx
push 0x10
mov dword [0x50a180], eax
call fcn.0042c1fc
push 0x20
mov dword [0x4a1aec], eax
call fcn.0042c1fc
push edi
push edi
push 0x478
push dword [0x50a148]
mov dword [0x4a1af0], eax
call ebx
push edi
push ebp
push 0x459
push dword [0x50a148]
call ebx
push ebp
push edi
push 0x445
push dword [0x50a164]
call ebx
push edi
push 0x103
mov esi, 0xc5
push esi
push dword [0x50a164]
call ebx
push edi
push 0xfd
push esi
push dword [0x50a17c]
call ebx
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, 0x5097a8
push edi
push 0x60
push 0x474b70
mov esi, 0x456480
push esi
call ebp
push 0x5c
push 0x4a1b68
push 0x509ab8
mov dword [esp + 0x1c], eax
call fcn.00447767
add esp, 0xc
push edi
push 0x5c
push 0x509ab8
push str.EditFont
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
test eax, eax
jne 0x43def1
push 0x5c
push 0x4a1b68
push 0x509ab8
call fcn.00447767
add esp, 0xc
cmp dword [0x509b18], 5
jne 0x43df5b
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
mov ecx, 0x411
cmp ax, cx
jne 0x43df5b
push 0x4775f4
push 0x509ad4
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x43df5b
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x43df1d
cmp ecx, 0x3e8
jae 0x43df1d
mov eax, dword [0x4a1abc]
cmp eax, ecx
je 0x43df1d
push ecx
push eax
push dword [0x509ab8]
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [0x509ab8], eax
mov eax, dword [0x509ab8]
add eax, 0x78
cmp eax, 0xf0
ja 0x43df47
cmp byte [0x509ace], 0
jne 0x43df47
cmp byte [0x509acd], 0
jne 0x43df47
cmp dword [0x509ac4], 0
je 0x43df72
push 0x5c
push 0x4a1b68
push 0x509ab8
call fcn.00447767
add esp, 0xc
push 0x40
push dword [0x4a1abc]
push 8
call dword [sym.imp.KERNEL32.dll_MulDiv]
neg eax
mov dword [0x509ab8], eax
push 0x509ab8
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x50a190], eax
test eax, eax
jne 0x43df96
push 0x4a1b68
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x50a190], eax
push 0
push 0
push 0x44e
push dword [0x50a148]
call ebx
push eax
push 1
push 0x44d
push dword [0x50a148]
call ebx
push 0
push dword [0x50a190]
push 0x30
push dword [0x50a148]
call ebx
push edi
push 0
push str.EditFontColor
push esi
call ebp
push edi
push 0xd8dce0
push str.EditBkColor
push esi
mov dword [0x509cc0], eax
call ebp
push edi
push 0xffffff
push str.EditFontColorDk
push esi
mov dword [0x50a010], eax
call ebp
push edi
push 0x1a1a1a
push str.EditBkColorDk
push esi
mov dword [0x509cc4], eax
call ebp
push 0x5099b8
push 0x5c
push 0
push 0
push 0x31
push dword [0x50a144]
mov dword [0x50a014], eax
call ebx
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
push edi
push 0x5c
push 0x509a58
push str.TreeFont
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
test eax, eax
je 0x43e082
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x43e072
cmp ecx, 0x3e8
jae 0x43e072
mov eax, dword [0x4a1abc]
cmp eax, ecx
je 0x43e072
push ecx
push eax
push dword [0x509a58]
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [0x509a58], eax
push 0x509a58
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x50a194], eax
mov eax, dword [0x50a194]
test eax, eax
jne 0x43e0b5
push 0x509a58
push 0x5c
push eax
push eax
push 0x31
push dword [0x50a144]
call ebx
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
push 0x509a58
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x50a194], eax
push 1
push eax
push 0x30
push dword [0x50a144]
call ebx
push edi
push 0x7d0
push str.HighlightDuration
push esi
call ebp
push edi
push 0x1f40
push str.FadingDuration
push esi
mov dword [0x50a1f8], eax
call ebp
push edi
push 0
push str.HighlightSelItem
push esi
mov dword [0x50a1fc], eax
call ebp
push edi
push 0
push str.HighlightEnsureVisible
push esi
mov dword [0x50a200], eax
call ebp
push edi
push 2
push str.HighlightCompanionPorts
push esi
mov dword [0x50a204], eax
call ebp
push edi
push 0x20ff20
push str.HighlightColorArrival
push esi
mov dword [0x50a208], eax
call ebp
push edi
push 0x4040ff
push str.HighlightColorRemoval
push esi
mov dword [0x50a20c], eax
call ebp
push edi
push 0x40ffff
push str.HighlightColorGotProblem
push esi
mov dword [0x50a214], eax
call ebp
push edi
push 0xffff40
push str.HighlightColorSafeRemoval
push esi
mov dword [0x50a21c], eax
call ebp
push edi
push 0xffe0e0
push str.HighlightColorCompanionSs
push esi
mov dword [0x50a224], eax
call ebp
push edi
push 0xccccff
push str.HighlightColorCompanionHs
push esi
mov dword [0x50a234], eax
call ebp
push edi
push 0xc8d0d4
push str.HighlightSelNoFocus
push esi
mov dword [0x50a22c], eax
call ebp
push edi
push 0xe
mov dword [0x50a244], eax
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push str.HighlightSelFocus
push esi
call ebp
push edi
push 0xd9c0d
push str.HighlightColorArrivalDk
push esi
mov dword [0x50a23c], eax
call ebp
push edi
push 0x1f1fba
push str.HighlightColorRemovalDk
push esi
mov dword [0x50a210], eax
call ebp
push edi
push 0x189292
push str.HighlightColorGotProblemDk
push esi
mov dword [0x50a218], eax
call ebp
push edi
push 0x9e9e1b
push str.HighlightColorSafeRemovalDk
push esi
mov dword [0x50a220], eax
call ebp
push edi
push 0xa66060
push str.HighlightColorCompanionSsDk
push esi
mov dword [0x50a228], eax
call ebp
push edi
push 0x6a6a9d
push str.HighlightColorCompanionHsDk
push esi
mov dword [0x50a238], eax
call ebp
push edi
push 0x5c5c5c
push str.HighlightSelNoFocusDk
push esi
mov dword [0x50a230], eax
call ebp
push edi
push 0x777777
push str.HighlightSelFocusDk
push esi
mov dword [0x50a248], eax
call ebp
mov dword [0x50a240], eax
mov eax, dword [0x50a1fc]
cdq
and edx, 0xff
push edi
add eax, edx
push 0x2710
sar eax, 8
push str.StatusTextTimeout
dec eax
push esi
mov dword [0x4a1af8], eax
call ebp
push edi
push 0
push str.StringDescDelay
push esi
mov dword [0x4a1afc], eax
call ebp
mov dword [0x50a1f4], eax
mov eax, dword [0x50a120]
push 1
push dword [eax*4 + 0x509cc0]
push dword [0x50a148]
call fcn.00429a5e
mov eax, dword [0x50a120]
push dword [eax*4 + 0x50a010]
push 0
push 0x443
push dword [0x50a148]
call ebx
push edi
push 0x367
push str.DisplayOptions
push esi
call ebp
mov ebx, eax
and eax, 1
push eax
push 0x9d6c
mov dword [0x4a1b10], eax
call fcn.0043275a
mov eax, ebx
shr eax, 1
and eax, 1
push eax
push 0x9d71
mov dword [0x50c79c], eax
call fcn.0043275a
mov eax, ebx
shr eax, 2
and eax, 1
push eax
push 0x9d76
mov dword [0x50c7c0], eax
call fcn.0043275a
mov eax, ebx
shr eax, 3
and eax, 1
push eax
push 0x9d79
mov dword [0x50c7c4], eax
call fcn.0043275a
mov eax, ebx
shr eax, 4
and eax, 1
push eax
push 0x9d72
mov dword [0x50c7a0], eax
call fcn.0043275a
mov eax, ebx
shr eax, 5
not eax
and eax, 1
push eax
push 0x9d80
mov dword [0x50c7b0], eax
call fcn.0043275a
mov eax, ebx
shr eax, 6
not eax
and eax, 1
push eax
push 0x9d81
mov dword [0x50c7b4], eax
call fcn.0043275a
mov eax, ebx
shr eax, 7
not eax
and eax, 1
push eax
push 0x9d82
mov dword [0x4a1b18], eax
call fcn.0043275a
mov eax, ebx
shr eax, 8
not eax
and eax, 1
push eax
push 0x9d84
mov dword [0x50c7b8], eax
call fcn.0043275a
mov eax, ebx
shr eax, 9
not eax
and eax, 1
push eax
push 0x9d85
mov dword [0x50c7bc], eax
call fcn.0043275a
mov eax, ebx
shr eax, 0xa
and eax, 1
push eax
push 0x9d73
mov dword [0x50c7a4], eax
call fcn.0043275a
mov eax, ebx
shr eax, 0xb
and eax, 1
push 0x9d8b
mov dword [0x50c7d0], eax
mov eax, 0x9d8a
push eax
push 0
pop ecx
setne cl
add ecx, eax
push ecx
call fcn.004327a4
mov eax, ebx
shr eax, 0xc
and eax, 1
push eax
push 0x9d7d
mov dword [0x50c7cc], eax
call fcn.0043275a
mov eax, ebx
shr eax, 0xd
and eax, 1
push eax
push 0x9d86
mov dword [0x4a1b14], eax
call fcn.0043275a
mov eax, ebx
shr eax, 0xe
and eax, 1
push eax
push 0x9d7a
mov dword [0x50c7c8], eax
call fcn.0043275a
mov eax, ebx
shr eax, 0xf
not eax
and eax, 1
push eax
push 0x9d7e
mov dword [0x4a1b20], eax
call fcn.0043275a
mov eax, ebx
shr eax, 0x10
not eax
and eax, 1
push eax
push 0x9d83
mov dword [0x4a1b1c], eax
call fcn.0043275a
mov eax, ebx
shr eax, 0x11
and eax, 1
push eax
push 0x9d7b
mov dword [0x50c7d4], eax
call fcn.0043275a
shr ebx, 0x12
and ebx, 1
push ebx
push 0x9d7c
mov dword [0x50c7d8], ebx
call fcn.0043275a
push edi
xor ebx, ebx
push ebx
push str.SkipDeviceQualiDescForLowSpeedDevs
push esi
call ebp
push edi
push ebx
push str.SkipDeviceQualiDescForFullSpeedDevs
push esi
mov dword [0x50c7a8], eax
call ebp
push edi
push 2
push str.TreeNamesByWhat
push esi
mov dword [0x50c7ac], eax
call ebp
push 0x9d96
mov dword [0x4a1b24], eax
push 0x9d94
add eax, 0x9d94
push eax
call fcn.004327a4
push edi
push 0x28
push str.MountPointsMaxCharsInTree
push esi
call ebp
push edi
push 1
push str.RegEditAsSystem
push esi
mov dword [0x4a1b30], eax
call ebp
mov dword [0x50c7dc], eax
xor eax, eax
cmp dword [0x509b18], 5
push edi
setne al
inc eax
push eax
push str.ShowFileHandles
push esi
mov dword [0x4a1b28], eax
call ebp
mov dword [0x4a1b28], eax
cmp eax, 2
jne 0x43e545
cmp dword [0x509b18], 5
jne 0x43e545
mov dword [0x4a1b28], 1
push edi
push ebx
push str.GrayMode
push esi
call ebp
push dword [0x50a120]
mov dword [0x50a11c], eax
push 0x9dbe
call fcn.0043275a
call fcn.00437369
call fcn.00428cbe
test eax, eax
je 0x43e59c
push edi
push 1
push str.VisualStyles
push esi
call ebp
push eax
push 0x9dbd
mov dword [0x4a1b2c], eax
call fcn.0043275a
cmp dword [0x4a1b2c], ebx
jne 0x43e5af
call fcn.0043281c
jmp 0x43e5af
push 1
push 0x9dbd
push dword [0x50a140]
call dword [sym.imp.USER32.dll_EnableMenuItem]
push edi
push ebx
push str.Topmost
push esi
call ebp
push eax
push 0x9dc6
mov dword [0x50c7e0], eax
call fcn.0043275a
cmp dword [0x50c7e0], ebx
je 0x43e5de
push 0xffffffffffffffff
push dword [0x50a13c]
call fcn.0042a819
push dword [0x50c7e4]
push 0x9dc1
call fcn.0043275a
cmp dword [0x509b18], 6
jb 0x43e60c
push 4
push 4
push 0x112c
push dword [0x50a144]
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x7f00
push ebx
call dword [sym.imp.USER32.dll_LoadCursorW]
push 0x70
mov dword [0x50a1b8], eax
call fcn.00447831
pop ecx
cmp eax, ebx
je 0x43e63f
push 5
push dword [0x50a14c]
mov ecx, eax
call fcn.00405d12
mov dword [0x50aab4], eax
jmp 0x43e645
mov dword [0x50aab4], ebx
cmp dword [0x50c814], ebx
jne 0x43e6be
push 0x1018
call fcn.00447831
pop ecx
cmp eax, ebx
je 0x43e665
mov ecx, eax
call fcn.004077d0
jmp 0x43e667
xor eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov dword [0x50c814], eax
mov dword [eax + 4], ebx
mov eax, dword [0x50c814]
mov dword [eax + 0x14], 2
mov eax, dword [0x50c814]
push 0x452148
add eax, 0xd0e
push eax
call esi
push str.Root
push 0x50a07a
call esi
mov eax, dword [0x50c814]
mov edi, str.My_Computer
push edi
add eax, 0x20
push eax
call esi
mov eax, dword [0x50c814]
push edi
add eax, 0x424
push eax
call esi
mov esi, dword [sym.imp.USER32.dll_SetWindowLongW]
push 0x436aab
push 0xfffffffffffffffc
pop edi
push edi
push dword [0x50a144]
call esi
push 0x4318fb
push edi
push dword [0x50a148]
mov dword [0x50a254], eax
call esi
push 0x431ffa
push edi
push dword [0x50a164]
mov dword [0x50a258], eax
call esi
push 0x431899
push edi
push dword [0x50a170]
mov dword [0x50a25c], eax
call esi
push 0x4318ca
push edi
push dword [0x50a174]
mov dword [0x50a264], eax
call esi
mov dword [0x50a268], eax
call fcn.00428b68
test eax, eax
je 0x43e73f
push 0x9cb3
push dword [0x50a140]
call fcn.00428c2f
cmp word [0x50a888], bx
je 0x43e74f
push 0x438345
jmp 0x43e754
push 0x43d760
push 0xa
push 0x12340001
push dword [esp + 0x24]
call dword [sym.imp.USER32.dll_SetTimer]
cmp dword [0x50a0ec], ebx
jne 0x43e77e
push dword [0x50a144]
push dword [0x50a13c]
call fcn.004299e8
cmp dword [0x4a1abc], 0x60
jle 0x43e79a
push ebx
push ebx
push 0x8004
push dword [0x50a13c]
call dword [sym.imp.USER32.dll_PostMessageW]
push 0x500000
push 0x100000
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetProcessWorkingSetSize]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
pop ecx
ret 0xc