Function at 0x40c880
Capabilities:
Create process on windows
Get session user name
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x43c98a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xddc
push ebx
push ebp
push esi
push edi
mov esi, ecx
mov eax, dword [esp + 0xdfc]
xor ebp, ebp
mov dword [esp + 0xdf4], ebp
cmp dword [eax - 8], ebp
jne 0x40c8c6
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
lea ecx, [esp + 0xdfc]
push ecx
lea ecx, [esp + 0x24]
call fcn.0043175c
mov al, byte [esi + 0x124]
mov byte [esp + 0xdf4], 1
test al, al
je 0x40c908
lea edx, [esp + 0xdfc]
lea ecx, [esi + 0x8c]
push edx
call fcn.00431b20
mov byte [esi + 0x124], 0
jmp 0x40c99b
mov eax, dword [esi + 0x8c]
lea edi, [esi + 0x8c]
push eax
mov eax, dword [esp + 0x24]
push eax
call fcn.0041c499
add esp, 8
test eax, eax
jne 0x40c946
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], al
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
push edi
lea ecx, [esp + 0x2c]
call fcn.0043175c
push 0x44d278
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf8], 2
call fcn.0042ca8a
push str.reload
lea ecx, [esp + 0x2c]
call fcn.00431dc3
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
push ecx
push edx
call fcn.0041c499
add esp, 8
test eax, eax
jne 0x40c9ca
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
lea ecx, [esp + 0xdfc]
mov dword [esp + 0xdf4], 0xffffffff
call fcn.004319e7
xor al, al
jmp 0x40da04
mov eax, dword [0x44ed90]
mov dword [esp + 0x24], eax
mov dword [esp + 0x10], eax
push 0x44dffc
lea ecx, [esp + 0xe00]
mov byte [esp + 0xdf8], 4
call fcn.0042c6f1
or ebx, 0xffffffff
cmp eax, ebx
je 0x40ca29
push eax
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0xe04]
call fcn.0042c657
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf8], 5
call fcn.00431b20
mov byte [esp + 0xdf4], 4
lea ecx, [esp + 0x18]
jmp 0x40ca5a
lea ecx, [esp + 0x18]
push 5
push ecx
lea ecx, [esp + 0xe04]
call fcn.0042c657
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf8], 6
call fcn.00431b20
mov byte [esp + 0xdf4], 4
lea ecx, [esp + 0x18]
call fcn.004319e7
push str.HELP
lea ecx, [esp + 0x30]
call fcn.00431a55
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
push edx
push eax
mov byte [esp + 0xdfc], 7
call fcn.0041c499
add esp, 8
test eax, eax
jne 0x40cb04
mov ecx, dword [esp + 0xdfc]
mov edx, dword [esp + 0x2c]
mov eax, dword [ecx - 8]
mov ebp, dword [edx - 8]
sub eax, ebp
lea ecx, [esp + 0xdfc]
dec eax
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.0042c5db
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf8], 8
call fcn.00431b20
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf4], 7
call fcn.004319e7
push 0x44d130
push 0x44d12c
lea ecx, [esp + 0x18]
call fcn.0042c3e2
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
call fcn.0043175c
mov ecx, esi
call fcn.00410fa0
jmp 0x40d99a
mov eax, dword [esp + 0x24]
push str.LAUNCH
push eax
call fcn.0041c499
add esp, 8
test eax, eax
jne 0x40cfc8
push 0x44d558
push 0x44dfe8
lea ecx, [esp + 0xe04]
call fcn.0042c3e2
mov ecx, dword [esp + 0xdfc]
lea edx, [esp + 0x14]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0xdfc]
add eax, 0xfffffff9
push eax
push edx
call fcn.0042c5db
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf8], 9
call fcn.00431b20
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf4], 7
call fcn.004319e7
mov eax, dword [esp + 0x10]
cmp dword [eax - 8], ebp
jne 0x40cbee
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
lea ecx, [esp + 0xdfc]
mov dword [esp + 0xdf4], ebx
call fcn.004319e7
xor al, al
jmp 0x40da04
push 0x44d55c
lea ecx, [esp + 0x1c]
call fcn.00431a55
push 0x44d128
lea ecx, [esp + 0x34]
mov byte [esp + 0xdf8], 0xa
call fcn.00431a55
mov ecx, dword [esp + 0x10]
push 1
mov byte [esp + 0xdf8], 0xb
mov dl, byte [ecx]
lea ecx, [esp + 0x18]
mov byte [esp + 0x18], dl
mov eax, dword [esp + 0x18]
push eax
call fcn.0042c2a1
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push ecx
push edx
call fcn.0041c3ea
add esp, 8
lea ecx, [esp + 0x14]
test eax, eax
sete bl
call fcn.004319e7
mov edi, dword [sym.imp.SHELL32.dll_ShellExecuteA]
test bl, bl
je 0x40cd47
mov eax, dword [esp + 0x10]
cmp dword [eax - 8], ebp
jle 0x40cd47
mov ecx, dword [esp + 0x18]
push 1
push ecx
lea ecx, [esp + 0x18]
call fcn.0042c6ff
mov esi, eax
cmp esi, 0xffffffff
jle 0x40cd47
lea edx, [esi + 1]
lea eax, [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x18]
call fcn.0042c657
mov bl, 0xc
push 0x44d558
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf8], bl
call fcn.0042cadd
push 0x44d558
lea ecx, [esp + 0x20]
call fcn.0042ca8a
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x14]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x10]
sub eax, esi
dec eax
push eax
push edx
call fcn.0042c5db
push 0x44d558
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf8], 0xd
call fcn.0042cadd
push 0x44d558
lea ecx, [esp + 0x18]
call fcn.0042ca8a
push 0x44d128
push 0x44d55c
lea ecx, [esp + 0x24]
call fcn.0042c3e2
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
push 1
push ebp
push eax
push ecx
push str.open
push ebp
call edi
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf4], bl
call fcn.004319e7
lea ecx, [esp + 0x1c]
mov byte [esp + 0xdf4], 0xb
call fcn.004319e7
mov edx, dword [esp + 0x10]
push 1
mov al, byte [edx]
mov byte [esp + 0x18], al
mov ecx, dword [esp + 0x18]
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042c2a1
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x14]
push edx
push eax
call fcn.0041c3ea
add esp, 8
lea ecx, [esp + 0x14]
test eax, eax
sete bl
call fcn.004319e7
test bl, bl
je 0x40ce60
mov ecx, dword [esp + 0x10]
cmp dword [ecx - 8], ebp
jle 0x40cf41
mov edx, dword [esp + 0x30]
push 1
push edx
lea ecx, [esp + 0x18]
call fcn.0042c6ff
mov esi, eax
cmp esi, 0xffffffff
jle 0x40cf41
lea eax, [esi + 1]
lea ecx, [esp + 0x1c]
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.0042c657
mov bl, 0xe
push 0x44d558
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf8], bl
call fcn.0042cadd
push 0x44d558
lea ecx, [esp + 0x20]
call fcn.0042ca8a
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x10]
mov eax, dword [edx - 8]
sub eax, esi
dec eax
push eax
lea eax, [esp + 0x18]
push eax
call fcn.0042c5db
push 0x44d558
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf8], 0xf
call fcn.0042cadd
push 0x44d558
lea ecx, [esp + 0x18]
call fcn.0042ca8a
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push 1
push ebp
push ecx
push edx
push str.open
push ebp
call edi
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf4], bl
call fcn.004319e7
lea ecx, [esp + 0x1c]
mov byte [esp + 0xdf4], 0xb
call fcn.004319e7
jmp 0x40cf41
push 0x44d558
lea ecx, [esp + 0x14]
call fcn.0042c6f1
cmp eax, 0xffffffff
jle 0x40cf30
push 0x44d558
lea ecx, [esp + 0x14]
call fcn.0042c6f1
mov esi, eax
lea eax, [esp + 0x1c]
push esi
push eax
lea ecx, [esp + 0x18]
call fcn.0042c657
mov bl, 0x10
push 0x44d558
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf8], bl
call fcn.0042cadd
push 0x44d558
lea ecx, [esp + 0x20]
call fcn.0042ca8a
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x14]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x10]
sub eax, esi
dec eax
push eax
push edx
call fcn.0042c5db
push 0x44d558
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf8], 0x11
call fcn.0042cadd
push 0x44d558
lea ecx, [esp + 0x18]
call fcn.0042ca8a
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
push 1
push ebp
push eax
push ecx
push str.open
push ebp
call edi
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf4], bl
call fcn.004319e7
lea ecx, [esp + 0x1c]
mov byte [esp + 0xdf4], 0xb
call fcn.004319e7
jmp 0x40cf41
mov edx, dword [esp + 0x10]
push 1
push ebp
push ebp
push edx
push str.open
push ebp
call edi
lea ecx, [esp + 0x30]
mov byte [esp + 0xdf4], 0xa
call fcn.004319e7
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf4], 7
call fcn.004319e7
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
mov eax, dword [esp + 0x24]
push str.javascript
push eax
call fcn.0041c499
add esp, 8
test eax, eax
jne 0x40d04d
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
lea ecx, [esp + 0xdfc]
mov dword [esp + 0xdf4], ebx
call fcn.004319e7
xor al, al
jmp 0x40da04
mov ecx, dword [esp + 0x24]
push 0x44dfd8
push ecx
call fcn.0041c499
add esp, 8
test eax, eax
jne 0x40d0cf
cmp dword [esi + 0x120], ebp
jne 0x40d99a
push 0xbc
call fcn.00431728
add esp, 4
mov dword [esp + 0x34], eax
cmp eax, ebp
mov byte [esp + 0xdf4], 0x12
je 0x40d096
push esi
mov ecx, eax
call fcn.00412b90
jmp 0x40d098
xor eax, eax
push esi
push 0xa3
mov ecx, eax
mov byte [esp + 0xdfc], 7
mov dword [esi + 0x120], eax
call fcn.0042e0be
mov esi, dword [esi + 0x120]
cmp esi, ebp
je 0x40d99a
push 5
mov ecx, esi
call fcn.004315b1
jmp 0x40d99a
mov edx, dword [esp + 0x24]
push str.curMenu
push edx
call fcn.0041c499
add esp, 8
test eax, eax
jne 0x40d23e
mov eax, dword [0x44ed90]
mov dword [esp + 0x14], eax
push str.curmenu:__
lea ecx, [esp + 0x1c]
mov byte [esp + 0xdf8], 0x13
call fcn.00431a55
mov ecx, dword [esp + 0x18]
mov bl, 0x14
push ecx
lea ecx, [esp + 0xe00]
mov byte [esp + 0xdf8], bl
call fcn.0042c6f1
cmp eax, 0xffffffff
jle 0x40d1b7
mov edx, dword [esp + 0xdfc]
mov ecx, dword [esp + 0x18]
mov eax, dword [edx - 8]
mov edx, dword [ecx - 8]
sub eax, edx
lea edx, [esp + 0x30]
push eax
push edx
lea ecx, [esp + 0xe04]
call fcn.0042c5db
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf8], 0x15
call fcn.00431b20
lea ecx, [esp + 0x30]
mov byte [esp + 0xdf4], bl
call fcn.004319e7
push 0x44de3c
lea ecx, [esp + 0x18]
call fcn.0042ca8a
add esi, 0x94
push str._access_config.ini
lea eax, [esp + 0x34]
push esi
push eax
call fcn.00431c7c
mov eax, dword [eax]
mov ecx, dword [esp + 0x14]
push eax
push ecx
push str.LAST_USED_MENU
push str.OTHER
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [esp + 0x30]
call fcn.004319e7
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf4], 0x13
call fcn.004319e7
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf4], 7
call fcn.004319e7
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
mov edx, dword [esp + 0x24]
push str.http
push edx
call fcn.0041c499
add esp, 8
test eax, eax
je 0x40d7d5
mov eax, dword [esp + 0x24]
push str.https
push eax
call fcn.0041c499
add esp, 8
test eax, eax
je 0x40d7d5
push str.ABOUT
lea ecx, [esp + 0x1c]
push edi
push ecx
call fcn.00431c7c
mov eax, dword [eax]
mov edx, dword [esp + 0x20]
push eax
push edx
call fcn.0041c499
add esp, 8
lea ecx, [esp + 0x18]
test eax, eax
sete bl
call fcn.004319e7
test bl, bl
je 0x40d361
push ebp
lea ecx, [esp + 0x40]
call fcn.00409800
lea ecx, [esp + 0x3c]
mov byte [esp + 0xdf4], 0x1c
call fcn.0042e43f
lea ecx, [esp + 0xd4]
mov byte [esp + 0xdf4], 0x1e
call fcn.004319e7
lea ecx, [esp + 0x98]
mov byte [esp + 0xdf4], 0x1d
call fcn.00436bba
lea ecx, [esp + 0x3c]
mov byte [esp + 0xdf4], 7
call fcn.0042e080
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
push 0x44df98
lea eax, [esp + 0x1c]
push edi
push eax
call fcn.00431c7c
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
push eax
push ecx
call fcn.0041c499
add esp, 8
lea ecx, [esp + 0x18]
test eax, eax
sete bl
call fcn.004319e7
test bl, bl
je 0x40d509
mov edx, dword [esp + 0xe00]
lea eax, [esp + 0x34]
push eax
mov dword [edx], 1
call dword [sym.imp.USER32.dll_GetCursorPos]
push 8
call fcn.00431728
add esp, 4
cmp eax, ebp
je 0x40d3c8
mov dword [eax + 4], ebp
mov dword [eax], vtable.CMenu.0
mov ebp, eax
call dword [sym.imp.USER32.dll_CreatePopupMenu]
push eax
mov ecx, ebp
call fcn.00432e96
mov ecx, dword [ebp + 4]
mov ebx, dword [sym.imp.USER32.dll_AppendMenuA]
push str.Edit_Quick_Launches
push 0x63
push 0
push ecx
call ebx
mov edx, dword [ebp + 4]
push 0x452ac0
push 0x63
push 0x800
push edx
call ebx
mov ecx, esi
call fcn.0040c660
mov eax, dword [esi + 0xc4]
xor edi, edi
test eax, eax
jle 0x40d441
lea eax, [esp + 0x18]
push edi
push eax
lea ecx, [esi + 0xbc]
call fcn.0040da20
mov eax, dword [eax]
mov ecx, dword [ebp + 4]
push eax
push edi
push 0
push ecx
call ebx
lea ecx, [esp + 0x18]
call fcn.004319e7
mov eax, dword [esi + 0xc4]
inc edi
cmp edi, eax
jl 0x40d410
call fcn.0043211e
test eax, eax
je 0x40d453
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x74]
jmp 0x40d455
xor eax, eax
mov ecx, dword [esp + 0x34]
push 0
push eax
mov eax, dword [esp + 0x40]
push eax
push ecx
push 0x102
mov ecx, ebp
call fcn.0042f7ec
lea edx, [esp + 0x18]
push eax
push edx
lea ecx, [esi + 0xbc]
call fcn.0040da20
mov eax, dword [eax]
push 1
push 0x452ac0
push 0x452ac0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [esp + 0x18]
call fcn.004319e7
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
push str.Personalize
lea eax, [esp + 0x1c]
push edi
push eax
call fcn.00431c7c
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
push eax
push ecx
call fcn.0041c499
add esp, 8
lea ecx, [esp + 0x18]
test eax, eax
sete bl
call fcn.004319e7
test bl, bl
je 0x40d641
mov edx, dword [esp + 0xe00]
mov dword [edx], 1
mov eax, dword [esi + 0x88]
push eax
lea eax, [esp + 0x5f0]
push 0x400
push eax
push 0x452ac0
push str.PERSONALIZE
push str.Access_Text
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [esp + 0x5ec]
lea edi, [esi + 0x84]
push ecx
push 0x44d120
push edi
call fcn.0042ca77
mov edi, dword [edi]
add esp, 0xc
lea ecx, [esp + 0x244]
push ebp
push ebp
push esi
push edi
call fcn.00405270
mov eax, dword [esp + 0x284]
lea ecx, [esp + 0x244]
and ah, 0xfd
mov byte [esp + 0xdf4], 0x1f
mov dword [esp + 0x284], eax
call fcn.00405430
lea ecx, [esp + 0x244]
mov byte [esp + 0xdf4], 7
call fcn.00405370
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
push str.SystemInfo
lea edx, [esp + 0x1c]
push edi
push edx
call fcn.00431c7c
mov eax, dword [eax]
push eax
mov eax, dword [esp + 0x24]
push eax
call fcn.0041c499
add esp, 8
lea ecx, [esp + 0x18]
test eax, eax
sete bl
call fcn.004319e7
test bl, bl
je 0x40d758
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x9ec]
push ecx
push edx
mov dword [esp + 0x24], 0x400
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ecx
lea eax, [esi + 0x13c]
mov ecx, esp
mov dword [esp + 0x38], esp
push eax
call fcn.0043175c
push ebp
lea ecx, [esp + 0xe0]
call fcn.004085c0
push ecx
add esi, 0x94
mov ecx, esp
mov dword [esp + 0x38], esp
push esi
mov byte [esp + 0xdfc], 0x20
call fcn.0043175c
lea ecx, [esp + 0xdc]
call fcn.004096b0
lea ecx, [esp + 0xd8]
mov byte [esp + 0xdf4], 7
call fcn.00408a10
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
mov ecx, dword [esp + 0xdfc]
push 1
push ebp
push ebp
push ecx
push str.open
push ebp
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], 0xffffffff
jmp 0x40d9f6
push str.http:__search:
lea ecx, [esp + 0x18]
call fcn.00431a55
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0xdfc]
push edx
mov byte [esp + 0xdf8], 0x16
call fcn.0042c6f1
cmp eax, ebx
jle 0x40d971
mov eax, dword [0x44ed90]
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0xdfc]
mov edx, dword [esp + 0x14]
mov byte [esp + 0xdf4], 0x17
mov eax, dword [ecx - 8]
mov edi, dword [edx - 8]
sub eax, edi
lea ecx, [esp + 0xdfc]
push eax
lea eax, [esp + 0x38]
push eax
call fcn.0042c5db
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf8], 0x18
call fcn.00431b20
lea ecx, [esp + 0x34]
mov byte [esp + 0xdf4], 0x17
call fcn.004319e7
push 0x44d130
push 0x44d12c
lea ecx, [esp + 0x24]
call fcn.0042c3e2
mov ecx, dword [0x44ed90]
mov dword [esp + 0x30], ecx
push str._searchInput
lea ecx, [esp + 0x1c]
mov byte [esp + 0xdf8], 0x19
call fcn.00431a55
mov edx, dword [esp + 0x18]
mov bl, 0x1a
push edx
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf8], bl
call fcn.0042c6f1
mov edi, eax
cmp edi, 0xffffffff
jle 0x40d939
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x34]
mov eax, dword [eax - 8]
mov ebp, dword [ecx - 8]
sub eax, ebp
lea ecx, [esp + 0x1c]
sub eax, edi
push eax
push edx
call fcn.0042c5db
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0xdf8], 0x1b
call fcn.00431b20
lea ecx, [esp + 0x34]
mov byte [esp + 0xdf4], bl
call fcn.004319e7
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x1c]
mov eax, dword [eax - 8]
sub eax, edi
push eax
push edi
call fcn.0042c2d5
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
call fcn.0043175c
mov ecx, esi
call fcn.00410fa0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esi + 0x12c]
push eax
push 2
push ecx
push edx
call fcn.00413fd0
lea ecx, [esp + 0x18]
mov byte [esp + 0xdf4], 0x19
call fcn.004319e7
lea ecx, [esp + 0x30]
mov byte [esp + 0xdf4], 0x17
call fcn.004319e7
lea ecx, [esp + 0x1c]
mov byte [esp + 0xdf4], 0x16
call fcn.004319e7
or ebx, 0xffffffff
jmp 0x40d989
mov eax, dword [esp + 0xdfc]
push 1
push ebp
push ebp
push eax
push str.open
push ebp
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [esp + 0x14]
mov byte [esp + 0xdf4], 7
call fcn.004319e7
lea ecx, [esp + 0x2c]
mov byte [esp + 0xdf4], 4
call fcn.004319e7
lea ecx, [esp + 0x10]
mov byte [esp + 0xdf4], 3
call fcn.004319e7
lea ecx, [esp + 0x24]
mov byte [esp + 0xdf4], 2
call fcn.004319e7
lea ecx, [esp + 0x28]
mov byte [esp + 0xdf4], 1
call fcn.004319e7
lea ecx, [esp + 0x20]
mov byte [esp + 0xdf4], 0
call fcn.004319e7
mov dword [esp + 0xdf4], ebx
lea ecx, [esp + 0xdfc]
call fcn.004319e7
mov al, 1
mov ecx, dword [esp + 0xdec]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xde8
ret 8