Function at 0x43d101
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 [0x508d24], esi
call fcn.0042c54b
xor ebp, ebp
inc ebp
push ebp
push ebp
push esi
call fcn.0042c54b
push 7
push 7
push esi
call fcn.0042c54b
push esi
call dword [sym.imp.USER32.dll_GetMenu]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3e8
push dword [0x508d24]
mov dword [0x508d28], eax
call esi
push 0x3e9
push dword [0x508d24]
mov dword [0x508d2c], eax
call esi
push 0x3ea
push dword [0x508d24]
mov dword [0x508d30], eax
call esi
push 0xa08c
push dword [0x508d24]
mov dword [0x508d34], eax
call esi
push 0x3fe
push dword [0x508d24]
mov dword [0x508d38], eax
call esi
push 0xa08d
push dword [0x508d24]
mov dword [0x508d3c], eax
call esi
push 0x3ff
push dword [0x508d24]
mov dword [0x508d40], eax
call esi
push 0xa08e
push dword [0x508d24]
mov dword [0x508d44], eax
call esi
push 0xa08f
push dword [0x508d24]
mov dword [0x508d48], eax
call esi
push 0xa090
push dword [0x508d24]
mov dword [0x508d4c], eax
call esi
push 0xa091
push dword [0x508d24]
mov dword [0x508d50], eax
call esi
push 0xa092
push dword [0x508d24]
mov dword [0x508d54], eax
call esi
push 0xa093
push dword [0x508d24]
mov dword [0x508d58], eax
call esi
push 0x400
push dword [0x508d24]
mov dword [0x508d5c], eax
call esi
mov dword [0x508d60], eax
xor edi, edi
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push edi
push edi
push 0x1119
push dword [0x508d2c]
call ebx
push 0x10
mov dword [0x508d68], eax
call fcn.0042bcb9
push 0x20
mov dword [0x4a0ae4], eax
call fcn.0042bcb9
push edi
push edi
push 0x478
push dword [0x508d30]
mov dword [0x4a0ae8], eax
call ebx
push edi
push ebp
push 0x459
push dword [0x508d30]
call ebx
push ebp
push edi
push 0x445
push dword [0x508d4c]
call ebx
push edi
push 0x103
mov esi, 0xc5
push esi
push dword [0x508d4c]
call ebx
push edi
push 0xfd
push esi
push dword [0x508d64]
call ebx
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, 0x508398
push edi
push 0x60
push 0x473a90
mov esi, 0x45548c
push esi
call ebp
push 0x5c
push 0x4a0b60
push 0x5086a8
mov dword [esp + 0x1c], eax
call fcn.00446bdc
add esp, 0xc
push edi
push 0x5c
push 0x5086a8
push str.EditFont
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
test eax, eax
jne 0x43d34f
push 0x5c
push 0x4a0b60
push 0x5086a8
call fcn.00446bdc
add esp, 0xc
cmp dword [0x508708], 5
jne 0x43d3b9
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
mov ecx, 0x411
cmp ax, cx
jne 0x43d3b9
push 0x47648c
push 0x5086c4
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x43d3b9
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x43d37b
cmp ecx, 0x3e8
jae 0x43d37b
mov eax, dword [0x4a0ab4]
cmp eax, ecx
je 0x43d37b
push ecx
push eax
push dword [0x5086a8]
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [0x5086a8], eax
mov eax, dword [0x5086a8]
add eax, 0x78
cmp eax, 0xf0
ja 0x43d3a5
cmp byte [0x5086be], 0
jne 0x43d3a5
cmp byte [0x5086bd], 0
jne 0x43d3a5
cmp dword [0x5086b4], 0
je 0x43d3d0
push 0x5c
push 0x4a0b60
push 0x5086a8
call fcn.00446bdc
add esp, 0xc
push 0x40
push dword [0x4a0ab4]
push 8
call dword [sym.imp.KERNEL32.dll_MulDiv]
neg eax
mov dword [0x5086a8], eax
push 0x5086a8
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x508d78], eax
test eax, eax
jne 0x43d3f4
push 0x4a0b60
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x508d78], eax
push 0
push 0
push 0x44e
push dword [0x508d30]
call ebx
push eax
push 1
push 0x44d
push dword [0x508d30]
call ebx
push 0
push dword [0x508d78]
push 0x30
push dword [0x508d30]
call ebx
push edi
push 0
push str.EditFontColor
push esi
call ebp
push edi
push 0xd8dce0
push str.EditBkColor
push esi
mov dword [0x5088b0], eax
call ebp
push edi
push 0xffffff
push str.EditFontColorDk
push esi
mov dword [0x508c00], eax
call ebp
push edi
push 0x1a1a1a
push str.EditBkColorDk
push esi
mov dword [0x5088b4], eax
call ebp
push 0x5085a8
push 0x5c
push 0
push 0
push 0x31
push dword [0x508d2c]
mov dword [0x508c04], eax
call ebx
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
push edi
push 0x5c
push 0x508648
push str.TreeFont
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
test eax, eax
je 0x43d4e0
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x43d4d0
cmp ecx, 0x3e8
jae 0x43d4d0
mov eax, dword [0x4a0ab4]
cmp eax, ecx
je 0x43d4d0
push ecx
push eax
push dword [0x508648]
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [0x508648], eax
push 0x508648
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x508d7c], eax
mov eax, dword [0x508d7c]
test eax, eax
jne 0x43d513
push 0x508648
push 0x5c
push eax
push eax
push 0x31
push dword [0x508d2c]
call ebx
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
push 0x508648
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x508d7c], eax
push 1
push eax
push 0x30
push dword [0x508d2c]
call ebx
push edi
push 0x7d0
push str.HighlightDuration
push esi
call ebp
push edi
push 0x1f40
push str.FadingDuration
push esi
mov dword [0x508dd8], eax
call ebp
push edi
push 0
push str.HighlightSelItem
push esi
mov dword [0x508ddc], eax
call ebp
push edi
push 1
push str.HighlightEnsureVisible
push esi
mov dword [0x508de0], eax
call ebp
push edi
push 2
push str.HighlightCompanionPorts
push esi
mov dword [0x508de4], eax
call ebp
push edi
push 0x20ff20
push str.HighlightColorArrival
push esi
mov dword [0x508de8], eax
call ebp
push edi
push 0x4040ff
push str.HighlightColorRemoval
push esi
mov dword [0x508dec], eax
call ebp
push edi
push 0x40ffff
push str.HighlightColorGotProblem
push esi
mov dword [0x508df4], eax
call ebp
push edi
push 0xffff40
push str.HighlightColorSafeRemoval
push esi
mov dword [0x508dfc], eax
call ebp
push edi
push 0xffe0e0
push str.HighlightColorCompanionSs
push esi
mov dword [0x508e04], eax
call ebp
push edi
push 0xccccff
push str.HighlightColorCompanionHs
push esi
mov dword [0x508e14], eax
call ebp
push edi
push 0xc8d0d4
push str.HighlightSelNoFocus
push esi
mov dword [0x508e0c], eax
call ebp
push edi
push 0xe
mov dword [0x508e24], 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 [0x508e1c], eax
call ebp
push edi
push 0x1f1fba
push str.HighlightColorRemovalDk
push esi
mov dword [0x508df0], eax
call ebp
push edi
push 0x189292
push str.HighlightColorGotProblemDk
push esi
mov dword [0x508df8], eax
call ebp
push edi
push 0x9e9e1b
push str.HighlightColorSafeRemovalDk
push esi
mov dword [0x508e00], eax
call ebp
push edi
push 0xa66060
push str.HighlightColorCompanionSsDk
push esi
mov dword [0x508e08], eax
call ebp
push edi
push 0x6a6a9d
push str.HighlightColorCompanionHsDk
push esi
mov dword [0x508e18], eax
call ebp
push edi
push 0x5c5c5c
push str.HighlightSelNoFocusDk
push esi
mov dword [0x508e10], eax
call ebp
push edi
push 0x777777
push str.HighlightSelFocusDk
push esi
mov dword [0x508e28], eax
call ebp
mov dword [0x508e20], eax
mov eax, dword [0x508ddc]
cdq
and edx, 0xff
push edi
add eax, edx
push 0x2710
sar eax, 8
push str.StatusTextTimeout
dec eax
push esi
mov dword [0x4a0af0], eax
call ebp
push edi
push 0
push str.StringDescDelay
push esi
mov dword [0x4a0af4], eax
call ebp
mov dword [0x508e2c], eax
mov eax, dword [0x508d08]
push 1
push dword [eax*4 + 0x5088b0]
push dword [0x508d30]
call fcn.00429675
mov eax, dword [0x508d08]
push dword [eax*4 + 0x508c00]
push 0
push 0x443
push dword [0x508d30]
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 [0x4a0b08], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 1
and eax, 1
push eax
push 0x9d71
mov dword [0x50b380], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 2
and eax, 1
push eax
push 0x9d76
mov dword [0x50b3a4], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 3
and eax, 1
push eax
push 0x9d79
mov dword [0x50b3a8], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 4
and eax, 1
push eax
push 0x9d72
mov dword [0x50b384], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 5
not eax
and eax, 1
push eax
push 0x9d80
mov dword [0x50b394], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 6
not eax
and eax, 1
push eax
push 0x9d81
mov dword [0x50b398], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 7
not eax
and eax, 1
push eax
push 0x9d82
mov dword [0x4a0b10], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 8
not eax
and eax, 1
push eax
push 0x9d84
mov dword [0x50b39c], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 9
not eax
and eax, 1
push eax
push 0x9d85
mov dword [0x50b3a0], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 0xa
and eax, 1
push eax
push 0x9d73
mov dword [0x50b388], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 0xb
and eax, 1
push 0x9d8b
mov dword [0x50b3b4], eax
mov eax, 0x9d8a
push eax
push 0
pop ecx
setne cl
add ecx, eax
push ecx
call fcn.00431ea6
mov eax, ebx
shr eax, 0xc
and eax, 1
push eax
push 0x9d7d
mov dword [0x50b3b0], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 0xd
and eax, 1
push eax
push 0x9d86
mov dword [0x4a0b0c], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 0xe
and eax, 1
push eax
push 0x9d7a
mov dword [0x50b3ac], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 0xf
not eax
and eax, 1
push eax
push 0x9d7e
mov dword [0x4a0b18], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 0x10
not eax
and eax, 1
push eax
push 0x9d83
mov dword [0x4a0b14], eax
call fcn.00431e5c
mov eax, ebx
shr eax, 0x11
and eax, 1
push eax
push 0x9d7b
mov dword [0x50b3b8], eax
call fcn.00431e5c
shr ebx, 0x12
and ebx, 1
push ebx
push 0x9d7c
mov dword [0x50b3bc], ebx
call fcn.00431e5c
push edi
push 0x14
push str.NumberIconsMaxInternalSize
push esi
call ebp
push edi
xor ebx, ebx
push ebx
push str.SkipDeviceQualiDescForLowSpeedDevs
push esi
mov dword [0x4a0aec], eax
call ebp
push edi
push ebx
push str.SkipDeviceQualiDescForFullSpeedDevs
push esi
mov dword [0x50b38c], eax
call ebp
push edi
push 2
push str.TreeNamesByWhat
push esi
mov dword [0x50b390], eax
call ebp
push 0x9d96
mov dword [0x4a0b1c], eax
push 0x9d94
add eax, 0x9d94
push eax
call fcn.00431ea6
push edi
push 0x28
push str.MountPointsMaxCharsInTree
push esi
call ebp
push edi
push 1
push str.RegEditAsSystem
push esi
mov dword [0x4a0b28], eax
call ebp
mov dword [0x50b3c0], eax
xor eax, eax
cmp dword [0x508708], 5
push edi
setne al
inc eax
push eax
push str.ShowFileHandles
push esi
mov dword [0x4a0b20], eax
call ebp
mov dword [0x4a0b20], eax
cmp eax, 2
jne 0x43d9b3
cmp dword [0x508708], 5
jne 0x43d9b3
mov dword [0x4a0b20], 1
push edi
push ebx
push str.GrayMode
push esi
call ebp
push dword [0x508d08]
mov dword [0x508d04], eax
push 0x9dbe
call fcn.00431e5c
call fcn.004368f8
call fcn.004288d5
test eax, eax
je 0x43da0a
push edi
push 1
push str.VisualStyles
push esi
call ebp
push eax
push 0x9dbd
mov dword [0x4a0b24], eax
call fcn.00431e5c
cmp dword [0x4a0b24], ebx
jne 0x43da1d
call fcn.00431f1e
jmp 0x43da1d
push 1
push 0x9dbd
push dword [0x508d28]
call dword [sym.imp.USER32.dll_EnableMenuItem]
push edi
push ebx
push str.Topmost
push esi
call ebp
push eax
push 0x9dc6
mov dword [0x50b3c4], eax
call fcn.00431e5c
cmp dword [0x50b3c4], ebx
je 0x43da4c
push 0xffffffffffffffff
push dword [0x508d24]
call fcn.0042a2ee
push dword [0x50b3c8]
push 0x9dc1
call fcn.00431e5c
cmp dword [0x508708], 6
jb 0x43da7a
push 4
push 4
push 0x112c
push dword [0x508d2c]
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x7f00
push ebx
call dword [sym.imp.USER32.dll_LoadCursorW]
push 0x70
mov dword [0x508da0], eax
call fcn.00446ca6
pop ecx
cmp eax, ebx
je 0x43daad
push 5
push dword [0x508d34]
mov ecx, eax
call fcn.00405caa
mov dword [0x509698], eax
jmp 0x43dab3
mov dword [0x509698], ebx
cmp dword [0x50b3f8], ebx
jne 0x43db2c
push 0x1014
call fcn.00446ca6
pop ecx
cmp eax, ebx
je 0x43dad3
mov ecx, eax
call fcn.004076ca
jmp 0x43dad5
xor eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov dword [0x50b3f8], eax
mov dword [eax + 4], ebx
mov eax, dword [0x50b3f8]
mov dword [eax + 0x14], 2
mov eax, dword [0x50b3f8]
push 0x451138
add eax, 0xd0e
push eax
call esi
push str.Root
push 0x508c6a
call esi
mov eax, dword [0x50b3f8]
mov edi, str.My_Computer
push edi
add eax, 0x20
push eax
call esi
mov eax, dword [0x50b3f8]
push edi
add eax, 0x424
push eax
call esi
mov esi, dword [sym.imp.USER32.dll_SetWindowLongW]
push 0x43603d
push 0xfffffffffffffffc
pop edi
push edi
push dword [0x508d2c]
call esi
push 0x431001
push edi
push dword [0x508d30]
mov dword [0x508e38], eax
call esi
push 0x4316ea
push edi
push dword [0x508d4c]
mov dword [0x508e3c], eax
call esi
push 0x430f9f
push edi
push dword [0x508d58]
mov dword [0x508e40], eax
call esi
push 0x430fd0
push edi
push dword [0x508d5c]
mov dword [0x508e48], eax
call esi
mov dword [0x508e4c], eax
call fcn.0042877f
test eax, eax
je 0x43dbad
push 0x9cb3
push dword [0x508d28]
call fcn.00428846
cmp word [0x509468], bx
je 0x43dbbd
push 0x437839
jmp 0x43dbc2
push 0x43cbbe
push 0xa
push 0x12340001
push dword [esp + 0x24]
call dword [sym.imp.USER32.dll_SetTimer]
cmp dword [0x508cd8], ebx
jne 0x43dbec
push dword [0x508d2c]
push dword [0x508d24]
call fcn.004295ff
cmp dword [0x4a0ab4], 0x60
jle 0x43dc08
push ebx
push ebx
push 0x8004
push dword [0x508d24]
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