Function at 0x51da30
Capabilities:
Get graphical window text
Resolve function by parsing pe exports
Set current directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5e0c7a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x128
mov eax, dword [0x87a768]
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov dword [esp + 0x30], edi
mov dword [esp + 0x18], eax
xor esi, esi
lea ecx, [esp + 0x98]
mov dword [esp + 0x140], esi
mov dword [esp + 0x110], 5
mov dword [esp + 0x118], esi
call fcn.005b57f3
mov ecx, dword [edi + 0x12c]
push esi
push esi
push 0x1009
push ecx
mov byte [esp + 0x150], 1
call dword [sym.imp.USER32.dll_SendMessageW]
lea ecx, [esp + 0xa8]
call fcn.0052f0e0
mov eax, dword [edi + 0x661]
lea ebp, [edi + 0x661]
push eax
mov byte [esp + 0x144], 2
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
lea ecx, [esp + 0x38]
call fcn.0041b1a0
lea ecx, [esp + 0x44]
mov byte [esp + 0x140], 3
call fcn.0041b1a0
lea ecx, [esp + 0x50]
mov byte [esp + 0x140], 4
call fcn.0041b1a0
lea ecx, [esp + 0x5c]
mov byte [esp + 0x140], 5
call fcn.0041b1a0
lea ecx, [esp + 0x68]
mov byte [esp + 0x140], 6
call fcn.0041b1a0
lea ecx, [esp + 0x34]
mov byte [esp + 0x140], 7
call fcn.0041ca80
push esi
push ebp
lea ecx, [esp + 0x3c]
call fcn.0041c610
push 0x20
lea ecx, [esp + 0x28]
mov byte [esp + 0x144], 8
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x28], esi
call fcn.00401510
mov edx, dword [esp + 0x24]
mov dword [esp + 0x2c], esi
push str..ymd
lea ecx, [esp + 0x28]
mov byte [esp + 0x144], 9
mov word [edx], si
call fcn.00401610
cmp dword [esp + 0x2c], esi
je 0x51dbbf
lea eax, [esp + 0x24]
lea ecx, [esp + 0x44]
push eax
mov dword [esp + 0x38], 1
call fcn.00405c40
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x58], esi
push 0x2e
mov word [ecx], si
lea ecx, [esp + 0x48]
call fcn.004015e0
cmp eax, esi
jle 0x51dbd9
lea edx, [esp + 0x50]
inc eax
push edx
push eax
lea ecx, [esp + 0x4c]
call fcn.00401350
jmp 0x51dbd9
mov eax, dword [esp + 0x44]
mov dword [esp + 0x34], esi
mov dword [esp + 0x4c], esi
mov word [eax], si
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x58], esi
mov word [ecx], si
lea edx, [esp + 0x38]
lea ecx, [esp + 0x68]
push edx
call fcn.00405c40
push 0x3a
lea ecx, [esp + 0x6c]
call fcn.00405b40
lea eax, [esp + 0x5c]
lea ecx, [esp + 0x68]
push eax
call fcn.004018e0
mov ecx, dword [esp + 0x44]
cmp word [ecx], si
je 0x51dc22
push 0x5c
lea ecx, [esp + 0x6c]
call fcn.00405b40
lea edx, [esp + 0x44]
lea ecx, [esp + 0x68]
push edx
call fcn.004018e0
mov eax, dword [esp + 0x68]
push esi
push eax
lea ecx, [esp + 0xb0]
call fcn.0052f1a5
cmp eax, esi
je 0x51dfe2
lea ebx, [edi + 0x110]
lea ecx, [esp + 0xa8]
call fcn.0052f3cb
lea ebp, [esi + 1]
lea ecx, [esp + 0x18]
push ebp
push 0x851b78
push ecx
mov dword [esp + 0x98], eax
mov dword [esp + 0x120], esi
call fcn.005ad17a
mov edx, dword [esp + 0x24]
add esp, 0xc
lea ecx, [esp + 0x18]
mov eax, dword [edx - 8]
push eax
call fcn.005b4ba6
mov ecx, dword [edi + 0x12c]
mov dword [esp + 0x124], eax
lea eax, [esp + 0x110]
push eax
push 0
push 0x104d
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
lea edx, [esp + 0x88]
lea ecx, [esp + 0xa8]
push edx
call fcn.0052f49a
push 1
mov ecx, eax
mov byte [esp + 0x144], 0xa
call fcn.005b4ba6
lea ecx, [esp + 0xc8]
mov edi, eax
call fcn.0041b1a0
lea ecx, [esp + 0xd4]
mov byte [esp + 0x140], 0xb
call fcn.0041b1a0
lea ecx, [esp + 0xe0]
mov byte [esp + 0x140], 0xc
call fcn.0041b1a0
lea ecx, [esp + 0xec]
mov byte [esp + 0x140], 0xd
call fcn.0041b1a0
lea ecx, [esp + 0xf8]
mov byte [esp + 0x140], 0xe
call fcn.0041b1a0
lea ecx, [esp + 0xc4]
mov byte [esp + 0x140], 0xf
call fcn.0041ca80
push edi
lea ecx, [esp + 0x108]
call fcn.0051f9b0
lea eax, [esp + 0x104]
push 1
push eax
lea ecx, [esp + 0xcc]
mov byte [esp + 0x148], 0x10
call fcn.0041c610
mov ecx, dword [esp + 0x104]
mov byte [esp + 0x140], 0xf
push ecx
call fcn.005b44c3
add esp, 4
lea ecx, [esp + 0x88]
mov byte [esp + 0x140], 0x12
call fcn.005b4761
mov edx, dword [esp + 0xd4]
mov ecx, ebx
push edx
push 0
push esi
call fcn.005ae030
lea eax, [esp + 0x78]
lea ecx, [esp + 0xa8]
push eax
call fcn.0052f49a
mov eax, dword [eax]
push 0
push 0x8000
push eax
lea ecx, [esp + 0xa4]
mov byte [esp + 0x14c], 0x13
call fcn.005b59a5
test eax, eax
lea ecx, [esp + 0x78]
mov byte [esp + 0x140], 0x12
sete byte [esp + 0x13]
call fcn.005b4761
mov al, byte [esp + 0x13]
test al, al
jne 0x51e0b7
lea ecx, [esp + 0x98]
call fcn.005b5c9f
lea ecx, [esp + 0x98]
mov edi, eax
call fcn.005b5bc0
mov ecx, dword [0x87a768]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x90], edi
mov dword [esp + 0x94], 0
fild qword [esp + 0x90]
sub esp, 8
lea edx, [esp + 0x28]
mov byte [esp + 0x148], 0x1c
fmul qword [0x5f3a30]
fstp qword [esp]
push str._.2f_KB
push edx
call fcn.005ad17a
mov eax, dword [esp + 0x30]
add esp, 0x10
mov ecx, ebx
push eax
push 1
push esi
call fcn.005ae030
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0xac]
call fcn.0052f338
mov edx, dword [0x87a768]
mov dword [esp + 0x1c], edx
push 0
lea ecx, [esp + 0x18]
mov byte [esp + 0x144], 0x1d
call fcn.005ad97c
mov eax, dword [eax]
push 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x88], eax
call fcn.005ad97c
mov ecx, dword [eax + 4]
push 0
mov dword [esp + 0x80], ecx
lea ecx, [esp + 0x18]
call fcn.005ad97c
mov edx, dword [eax + 8]
push 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x78], edx
call fcn.005ad97c
mov eax, dword [eax + 0xc]
push 0
lea ecx, [esp + 0x18]
mov dword [esp + 0x84], eax
call fcn.005ad97c
mov edi, dword [eax + 0x10]
push 0
lea ecx, [esp + 0x18]
inc edi
call fcn.005ad97c
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x7c]
mov eax, dword [eax + 0x14]
push ecx
mov ecx, dword [esp + 0x78]
push edx
mov edx, dword [esp + 0x88]
push ecx
add eax, 0x76c
push edx
push edi
push eax
lea eax, [esp + 0x34]
push str._d__d__d__d:_d:_d
push eax
call fcn.005ad17a
mov ecx, dword [esp + 0x3c]
add esp, 0x20
push ecx
push 2
push esi
mov ecx, ebx
call fcn.005ae030
lea ecx, [esp + 0x1c]
mov esi, ebp
mov byte [esp + 0x140], 0x1c
call fcn.005b4761
lea ecx, [esp + 0x20]
mov byte [esp + 0x140], 0x12
call fcn.005b4761
mov edx, dword [esp + 0xf8]
mov byte [esp + 0x140], 0x21
push edx
call fcn.005b44c3
mov eax, dword [esp + 0xf0]
mov byte [esp + 0x144], 0x20
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0xe8]
mov byte [esp + 0x148], 0x1f
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0xe0]
mov byte [esp + 0x14c], 0x1e
push edx
call fcn.005b44c3
mov eax, dword [esp + 0xd8]
mov byte [esp + 0x150], 9
push eax
call fcn.005b44c3
mov eax, dword [esp + 0xa0]
mov edi, dword [esp + 0x44]
add esp, 0x14
test eax, eax
jne 0x51dc42
xor esi, esi
lea ecx, [esp + 0xa8]
call fcn.0052f15b
push esi
mov ecx, edi
call fcn.005b3071
mov eax, dword [esp + 0x24]
mov byte [esp + 0x140], 8
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0x6c]
mov byte [esp + 0x144], 0x25
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0x64]
mov byte [esp + 0x148], 0x24
push edx
call fcn.005b44c3
mov eax, dword [esp + 0x5c]
mov byte [esp + 0x14c], 0x23
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0x54]
mov byte [esp + 0x150], 0x22
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0x4c]
mov byte [esp + 0x154], 2
push edx
call fcn.005b44c3
add esp, 0x18
lea ecx, [esp + 0xa8]
mov byte [esp + 0x140], 1
call fcn.0052f11f
lea ecx, [esp + 0x98]
mov byte [esp + 0x140], 0
call fcn.005b58e8
lea ecx, [esp + 0x18]
mov dword [esp + 0x140], 0xffffffff
call fcn.005b4761
mov ecx, dword [esp + 0x138]
pop edi
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0xf8]
mov byte [esp + 0x140], 0x17
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0xf0]
mov byte [esp + 0x144], 0x16
push edx
call fcn.005b44c3
mov eax, dword [esp + 0xe8]
mov byte [esp + 0x148], 0x15
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0xe0]
mov byte [esp + 0x14c], 0x14
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0xd8]
mov byte [esp + 0x150], 9
push edx
call fcn.005b44c3
mov eax, dword [esp + 0x38]
mov byte [esp + 0x154], 8
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0x80]
mov byte [esp + 0x158], 0x1b
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0x78]
mov byte [esp + 0x15c], 0x1a
push edx
call fcn.005b44c3
mov eax, dword [esp + 0x70]
mov byte [esp + 0x160], 0x19
push eax
call fcn.005b44c3
mov ecx, dword [esp + 0x68]
mov byte [esp + 0x164], 0x18
push ecx
call fcn.005b44c3
mov edx, dword [esp + 0x60]
mov byte [esp + 0x168], 2
push edx
call fcn.005b44c3
add esp, 0x2c
jmp 0x51e065