Function at 0x5003c0
Capabilities:
Query environment variable

Disassembly:
push ebx
mov ebx, dword [0x5f14f4]
push esi
mov esi, ecx
mov ecx, ebx
call fcn.004f0af0
test eax, eax
je 0x500ae7
push ebp
push edi
mov edx, ebx
mov ecx, 1
call fcn.00458840
mov edi, dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push 0
push 0x46
push 0xc5
push 0x78
push esi
call edi
push 0
push 0x46
push 0xc5
push 0x79
push esi
call edi
push 0
push 0x20
push 0xc5
push 0x7a
push esi
call edi
push 0
push 0x20
push 0xc5
push 0x7b
push esi
call edi
lea eax, [ebx + 0x118c]
push eax
push 0
push 0xc
push 0x78
push esi
call edi
lea ecx, [ebx + 0x11f0]
push ecx
push 0
push 0xc
push 0x79
push esi
call edi
lea edx, [ebx + 0x1254]
push edx
push 0
push 0xc
push 0x7a
push esi
call edi
lea eax, [ebx + 0x12b8]
push eax
push 0
push 0xc
push 0x7b
push esi
call edi
mov edx, dword [0x5f1900]
mov ebp, dword [sym.imp.USER32.dll_CheckDlgButton]
xor ecx, ecx
test edx, edx
setne cl
push ecx
push 0x7c
push esi
call ebp
mov dword [0x5f2b80], 0
call fcn.005288c0
push 0x5ee150
push 0x64
push 0x5f56f0
push 0x5aba08
mov edx, str.network
mov ecx, str.text
call fcn.004bcce0
mov al, byte [0x5f56f0]
test al, al
je 0x5004e2
push 0x5aba08
push 0x5f56f0
call fcn.005a299c
add esp, 8
test eax, eax
je 0x50051a
push str.Random
push 0x5f56f0
call fcn.005a299c
add esp, 8
test eax, eax
je 0x50051a
lea eax, [ebx + 0x1c94]
mov edx, 0x5f56f0
sub edx, eax
nop
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x5004f0
mov al, byte [0x5f56f0]
test al, al
jne 0x50051a
lea eax, [ebx + 0x1448]
mov edx, 0x5f56f0
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x500510
push 1
mov edx, 0x7f
mov ecx, esi
call fcn.00500240
push 1
mov edx, 0x95
mov ecx, esi
call fcn.00500240
xor edx, edx
mov ecx, esi
call fcn.00528bf0
xor edx, edx
mov ecx, esi
call fcn.00529b30
xor eax, eax
push eax
push 0x3c
push 0xc5
push 0xa3
push esi
mov dword [0x5f2b7c], eax
mov dword [0x5f2b90], eax
call edi
push 0
push 0x1e
push 0xc5
push 0xa4
push esi
call edi
lea edx, [ebx + 0x840]
push edx
push 0
push 0xc
push 0xa3
push esi
call edi
add ebx, 0x8a4
push ebx
push 0
push 0xc
push 0xa4
push esi
call edi
mov ecx, dword [0x5f14f4]
call fcn.004f0d40
test eax, eax
mov ebx, dword [sym.imp.USER32.dll_EnableWindow]
jne 0x5005bf
mov ecx, dword [0x5f14f4]
call fcn.004f0df0
test eax, eax
je 0x5005db
push 0
push 0x78
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
push 0
push 0x79
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
mov ecx, dword [0x5f14f4]
call fcn.004f1690
test eax, eax
je 0x50060c
push 0
push 0xa3
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
push 0
push 0xa4
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
mov eax, dword [0x5bfd0c]
test eax, eax
je 0x500630
push 0
push 0xa6
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
mov dword [0x5bfd10], 1
mov ebx, dword [0x5bfd0c]
xor eax, eax
test ebx, ebx
setne al
push eax
push 0xa5
push esi
call ebp
mov ebx, dword [0x5bfd10]
xor ecx, ecx
test ebx, ebx
setne cl
push ecx
push 0xa6
push esi
call ebp
mov ebx, dword [0x5bfd14]
xor edx, edx
test ebx, ebx
sete dl
push edx
push 0xa9
push esi
call ebp
mov edx, dword [0x5bfd14]
xor eax, eax
test edx, edx
setne al
push eax
push 0xaa
push esi
call ebp
mov edx, dword [0x5f18f8]
xor ecx, ecx
test edx, edx
setne cl
push ecx
push 0xaf
push esi
call ebp
mov ecx, dword [0x5f18fc]
xor edx, edx
test ecx, ecx
setne dl
push edx
push 0xb0
push esi
call ebp
mov ecx, dword [0x5bfd1c]
xor eax, eax
test ecx, ecx
setne al
push eax
push 0xb1
push esi
call ebp
mov eax, dword [0x5bfd18]
xor ecx, ecx
test eax, eax
setne cl
push ecx
push 0xb2
push esi
call ebp
mov eax, dword [0x5bfc90]
xor edx, edx
test eax, eax
setne dl
push edx
push 0xb3
push esi
call ebp
mov ebx, dword [0x5f18e0]
xor eax, eax
test ebx, ebx
setne al
push eax
push 0xb4
push esi
call ebp
mov ecx, dword [0x5bfd20]
mov edx, dword [0x5bfd24]
mov eax, dword [0x5bfd28]
mov dword [0x5f2980], ecx
mov ecx, dword [0x5bfd2c]
mov dword [0x5f2984], edx
mov edx, dword [0x5bfd30]
mov dword [0x5f2988], eax
mov eax, dword [0x5bfd64]
mov dword [0x5f298c], ecx
mov ecx, dword [0x5f3550]
mov dword [0x5f2990], edx
mov dx, word [0x5bfd68]
mov dword [0x5f2994], eax
mov ax, word [0x5bfd6c]
mov dword [0x5f2998], ecx
mov ecx, dword [0x5f3554]
mov word [0x5f29a4], dx
mov edx, dword [0x5f3558]
mov word [0x5f29a8], ax
mov dword [0x5f299c], ecx
mov dword [0x5f29a0], edx
xor eax, eax
mov edi, edi
mov cl, byte [eax + 0x5f3560]
mov byte [eax + 0x5f29b0], cl
inc eax
test cl, cl
jne 0x500790
push str.6667
push 0
push 0xc
push 0xb6
push esi
call edi
mov eax, dword [0x5bfda4]
push 0x5f67c8
mov edx, 0x104
mov ecx, 0x5f26f8
mov dword [0x5f27fc], eax
call fcn.00420d70
push 0x5f68d0
mov edx, 0x104
mov ecx, 0x5f25f0
call fcn.00420d70
push 0x5f69d8
mov edx, 0x104
mov ecx, 0x5f23e0
call fcn.00420d70
push 0
push 0xa
push 0xc5
push 0xc5
push esi
call edi
push 0
push 0x1e
push 0xc5
push 0xc7
push esi
call edi
push 0
push 0xa
push 0xc5
push 0xc9
push esi
call edi
mov eax, dword [0x5edb20]
movzx ecx, word [0x5bfbd4]
xor edx, edx
test eax, eax
setne dl
mov dword [0x5f2b88], ecx
mov dword [0x5f2b84], eax
push edx
push 0xc3
push esi
call ebp
push 0x5edb28
push 0
push 0xc
push 0xc5
push esi
call edi
push 0x5edb8c
push 0
push 0xc
push 0xc7
push esi
call edi
movzx eax, word [0x5bfbd4]
mov ebx, dword [sym.imp.USER32.dll_SetDlgItemInt]
push 0
push eax
push 0xc9
push esi
call ebx
mov eax, dword [0x5bfbcc]
xor ecx, ecx
test eax, eax
setne cl
push ecx
push 0xca
push esi
call ebp
mov ecx, dword [0x5bfbd0]
xor edx, edx
test ecx, ecx
setne dl
push edx
push 0xcb
push esi
call ebp
mov eax, dword [0x5bfbd0]
mov dword [0x5f2b8c], eax
mov eax, dword [0x5edb24]
xor ecx, ecx
test eax, eax
setne cl
push ecx
push 0xcc
push esi
call ebp
push 0
push 0
push 0x14b
push 0xd3
push esi
call edi
xor edx, edx
mov ecx, 0x110e
call fcn.0041f1a0
push eax
push 0
push 0x143
push 0xd3
push esi
call edi
xor edx, edx
mov ecx, 0x110f
call fcn.0041f1a0
push eax
push 0
push 0x143
push 0xd3
push esi
call edi
xor edx, edx
mov ecx, 0x1110
call fcn.0041f1a0
push eax
push 0
push 0x143
push 0xd3
push esi
call edi
xor edx, edx
mov ecx, 0x1111
call fcn.0041f1a0
push eax
push 0
push 0x143
push 0xd3
push esi
call edi
mov eax, dword [0x5cd3e4]
test eax, eax
mov eax, dword [0x5cd3e0]
push 0
je 0x50096f
test eax, eax
je 0x500977
push 3
jmp 0x50097d
test eax, eax
je 0x50097b
push 2
jmp 0x50097d
push 1
jmp 0x50097d
push 0
push 0x14e
push 0xd3
push esi
call edi
push 0
push 0
push 0x14b
push 0xd5
push esi
call edi
xor edx, edx
mov ecx, 0x1112
call fcn.0041f1a0
push eax
push 0
push 0x143
push 0xd5
push esi
call edi
xor edx, edx
mov ecx, 0x1113
call fcn.0041f1a0
push eax
push 0
push 0x143
push 0xd5
push esi
call edi
xor edx, edx
mov ecx, 0x1114
call fcn.0041f1a0
push eax
push 0
push 0x143
push 0xd5
push esi
call edi
mov eax, dword [0x5cd3dc]
test eax, eax
jl 0x5009fd
cmp eax, 2
jle 0x500a04
xor eax, eax
mov dword [0x5cd3dc], eax
push 0
push eax
push 0x14e
push 0xd5
push esi
call edi
mov al, byte [0x5cd2a8]
test al, al
jne 0x500a2f
push 0x64
push 0x5cd2a8
push str.SOCKS_HOST
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
push 0x5cd2a8
push 0
push 0xc
push 0xd7
push esi
call edi
movzx edx, word [0x5bfa90]
push 0
push edx
push 0xdd
push esi
call ebx
push 0x5cd310
push 0
push 0xc
push 0xd9
push esi
call edi
push 0x5cd378
push 0
push 0xc
push 0xdb
push esi
call edi
push 0x5a4bec
push 0
push 0xc
push 0xdf
push esi
call edi
mov ebp, dword [0x5cd3ec]
test ebp, ebp
je 0x500ae5
mov ebx, dword [sym.imp.USER32.dll_wsprintfA]
mov eax, dword [ebp]
push eax
push str._s_r_n
push 0x5f14f8
call ebx
add esp, 0xc
push 0x7d000
push 0x7d000
push 0xdf
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edx, 1
mov ecx, eax
call fcn.0047e370
push 0x5f14f8
push 0
push 0xc2
push 0xdf
push esi
call edi
mov ebp, dword [ebp + 0x40]
test ebp, ebp
jne 0x500a95
pop edi
pop ebp
pop esi
pop ebx
ret