Function at 0x4290d0
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4d3743
mov eax, dword fs:[0]
push eax
sub esp, 0x124
mov eax, dword [0x5254e0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x130]
mov edi, edx
push eax
mov esi, ecx
mov dword [ebp - 0x3c], edi
call fcn.0042a550
push str._logLevel1
push ecx
push str._disableLocalInterfacetrue
push ecx
push edi
push ecx
push str._proxyPort
push ecx
push str._psiphonStatstrue
push ecx
lea ebx, [esi + 0x2c]
lea ecx, [ebp - 0x120]
push ebx
push ecx
mov dword [ebp - 4], 0
call fcn.0042c7a0
add esp, 0xc
push eax
call fcn.0042ca40
add esp, 0xc
push eax
call fcn.0042ca40
add esp, 0xc
push eax
call fcn.0042a0e0
add esp, 4
push eax
call fcn.0042ca40
add esp, 0xc
push eax
call fcn.0042ca40
mov eax, dword [esi + 0x28]
add esp, 8
test eax, eax
jle 0x429231
push eax
push ecx
lea edx, [ebp - 0x120]
push str._socksParentProxy127.0.0.1:
push edx
call fcn.0042ca40
add esp, 0xc
push eax
call fcn.0042a0e0
cmp dword [esi + 0x58], 0
jbe 0x4291e1
push 0x4fe018
push ecx
lea eax, [esi + 0x48]
push eax
push ecx
lea ecx, [ebp - 0x120]
push 0x4fe01c
push ecx
call fcn.0042ca40
add esp, 0xc
push eax
call fcn.0042c7a0
add esp, 0xc
push eax
call fcn.0042ca40
lea edx, [ebp - 0x120]
push str._splitTunnelingDnsServer8.8.8.8
push edx
call fcn.0042ca40
add esp, 0x10
cmp dword [esi + 0xdc], 0
jbe 0x429231
lea eax, [esi + 0xcc]
lea edi, [ebp - 0x2c]
call fcn.00433d20
push eax
push ecx
lea eax, [ebp - 0x120]
push str._psiphonServer
push eax
mov byte [ebp - 4], 1
call fcn.0042ca40
add esp, 0xc
push eax
call fcn.0042c7a0
add esp, 8
mov byte [ebp - 4], 0
cmp dword [ebp - 0x18], 8
jb 0x429231
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.004a9dd8
add esp, 4
push 0x44
lea edx, [ebp - 0x88]
push 0
push edx
call fcn.004ac360
add esp, 0xc
push 0xfffffffffffffff6
mov dword [ebp - 0x88], 0x44
mov dword [ebp - 0x5c], pe_nt_image_headers32
call dword [sym.imp.KERNEL32.DLL_GetStdHandle]
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x4c]
push edx
lea ecx, [ebp - 0x38]
push ecx
or edi, 0xffffffff
lea edx, [ebp - 0x34]
mov dword [ebp - 0x50], eax
lea eax, [esi + 0x78]
push edx
push eax
mov dword [eax], edi
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x38], edi
call fcn.00452a80
add esp, 0x14
test al, al
je 0x4292bf
mov eax, dword [ebp - 0x34]
mov edi, dword [sym.imp.KERNEL32.DLL_CloseHandle]
push eax
call edi
mov ecx, dword [ebp - 0x38]
push ecx
call edi
lea ecx, [ebp - 0x2c]
lea eax, [ebp - 0x130]
call fcn.0042a5f0
mov edx, 8
cmp dword [eax + 0x14], edx
jb 0x42930a
mov ecx, dword [eax]
jmp 0x42930c
call dword [sym.imp.KERNEL32.DLL_GetLastError]
push eax
push str.LocalProxy::StartPolipo
push str._s___CreatePolipoPipe_failed___d_
push 0
push 0
call fcn.00432650
add esp, 0x14
lea ecx, [ebp - 0xd0]
mov dword [ebp - 4], edi
call fcn.00426a30
lea edx, [ebp - 0xd0]
push edx
mov dword [ebp - 0xd0], vtable.std::ios_base.0
call fcn.00497fcd
add esp, 4
xor al, al
jmp 0x4294b7
mov ecx, eax
cmp dword [ebx + 0x14], edx
jb 0x429315
mov eax, dword [ebx]
jmp 0x429317
mov eax, ebx
lea edi, [esi + 0x68]
push edi
lea edx, [ebp - 0x88]
push edx
push 0
push 0
push 0x8000200
push 1
push 0
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.DLL_CreateProcessW]
test eax, eax
sete bl
cmp dword [ebp - 0x18], 8
jb 0x429350
mov eax, dword [ebp - 0x2c]
push eax
call fcn.004a9dd8
add esp, 4
test bl, bl
je 0x4293a3
call dword [sym.imp.KERNEL32.DLL_GetLastError]
push eax
push str.LocalProxy::StartPolipo
push str._s___Polipo_CreateProcess_failed___d_
push 0
push 0
call fcn.00432650
add esp, 0x14
lea ecx, [ebp - 0xd0]
mov dword [ebp - 4], 0xffffffff
call fcn.00426a30
lea ecx, [ebp - 0xd0]
push ecx
mov dword [ebp - 0xd0], vtable.std::ios_base.0
call fcn.00497fcd
add esp, 4
xor al, al
jmp 0x4294b7
mov edx, dword [esi + 0x6c]
mov ebx, dword [sym.imp.KERNEL32.DLL_CloseHandle]
push edx
call ebx
mov eax, dword [ebp - 0x4c]
push eax
mov dword [esi + 0x6c], 0
call ebx
test eax, eax
jne 0x4293e4
call dword [sym.imp.KERNEL32.DLL_GetLastError]
push eax
push 0x13a
push str.LocalProxy::StartPolipo
push str._s:_d___CloseHandle_failed___d_
push 0
push 0
call fcn.00432650
add esp, 0x18
jmp 0x429371
mov edx, dword [ebp - 0x48]
push edx
call ebx
test eax, eax
jne 0x42942e
call dword [sym.imp.KERNEL32.DLL_GetLastError]
push eax
push 0x13f
push str.LocalProxy::StartPolipo
push str._s:_d___CloseHandle_failed___d_
push 0
push 0
call fcn.00432650
add esp, 0x18
lea ecx, [ebp - 0xd0]
mov dword [ebp - 4], 0xffffffff
call fcn.00426a30
lea eax, [ebp - 0xd0]
push eax
jmp 0x42938a
mov ecx, dword [edi]
push 0x1388
push ecx
call dword [sym.imp.USER32.dll_WaitForInputIdle]
mov edx, dword [edi]
mov eax, dword [ebp - 0x3c]
push edx
push 0x4e20
lea ecx, [esi + 0x18]
push eax
call fcn.004526d0
mov esi, eax
add esp, 0xc
cmp esi, 0x3e3
jne 0x429470
push 0x5152e8
lea ecx, [ebp - 0x2d]
xor al, al
push ecx
mov byte [ebp - 0x2d], al
call fcn.004aba66
test esi, esi
je 0x4294a3
call dword [sym.imp.KERNEL32.DLL_GetLastError]
push eax
push esi
push str.Failed_to_start_the_HTTP_proxy___d___d_
push 0
push 0
call fcn.00432650
add esp, 0x14
lea eax, [ebp - 0x130]
mov dword [ebp - 4], 0xffffffff
call fcn.00426920
xor al, al
jmp 0x4294b7
lea eax, [ebp - 0x130]
mov dword [ebp - 4], 0xffffffff
call fcn.00426920
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004a91d2
mov esp, ebp
pop ebp
ret