Function at 0x4609e0
Capabilities:
Query environment variable

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x3c
mov ebp, dword [esp + 0x50]
mov edi, dword [ebp + 8]
mov eax, dword [ebp + 0x14]
test edi, edi
mov dword [esp + 0x34], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x1c], 0
je 0x4611aa
mov esi, dword [ebp + 0x4c]
mov edx, dword [ebp + 0x20]
test esi, esi
mov dword [esp + 0x20], edx
je 0x460b80
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x460b4f
sub esp, 0xc
mov ebx, dword [ebp + 0x4c]
push ebx
call fcn.0045bc40
mov dword [esp + 0x34], eax
pop eax
pop edx
mov edx, dword [esp + 0x2c]
dec edx
push edx
mov edi, dword [ebp + 0x4c]
push edi
call fcn.0045bc50
mov esi, dword [esp + 0x3c]
mov edi, eax
mov eax, dword [esi + 0x18]
mov dword [esp + 0x38], eax
nop
lea esi, [esi]
add esp, 0x10
mov ecx, dword [esp + 0x24]
cmp dword [esp + 0x28], ecx
jl 0x460c44
sub esp, 0xc
push edi
call fcn.00457bf0
add esp, 0xc
push edi
push edi
push ebp
call dword [ebp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460c44
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x460c44
xor esi, esi
jmp 0x460ad5
sub esp, 8
push esi
mov edx, dword [esp + 0x28]
push edx
call fcn.0045bc50
add esp, 0xc
push eax
push edi
push ebp
mov ebx, eax
call dword [ebp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460c30
inc esi
sub esp, 0xc
mov ebx, dword [esp + 0x28]
push ebx
call fcn.0045bc40
add esp, 0x10
cmp eax, esi
jg 0x460ab0
xor eax, eax
test eax, eax
mov dword [esp + 0x38], eax
je 0x460c44
sub esp, 8
push eax
mov esi, dword [ebp + 0x4c]
push esi
call fcn.0045b9e0
add esp, 0x10
test eax, eax
je 0x460c37
sub esp, 0xc
push 0xa6
push str..cryptox509x509_vfy.c
push 3
push 1
mov eax, dword [esp + 0x54]
add eax, 0x10
push eax
call fcn.0046fc50
add esp, 0x18
mov ecx, dword [esp + 0x40]
push ecx
mov edi, dword [esp + 0x28]
push edi
call fcn.0045b980
inc dword [ebp + 0x48]
mov edi, dword [esp + 0x48]
inc dword [esp + 0x34]
jmp 0x460a70
sub esp, 0xc
push eax
call fcn.0045b760
mov dword [esp + 0x2c], eax
add esp, 0x10
test eax, eax
jne 0x460a3a
sub esp, 0xc
push 0x85
jmp 0x460ba5
call fcn.0045b6d0
test eax, eax
mov dword [ebp + 0x4c], eax
je 0x460ba0
sub esp, 8
mov ebx, dword [ebp + 8]
push ebx
push eax
call fcn.0045b9e0
add esp, 0x10
test eax, eax
jne 0x460c05
sub esp, 0xc
push 0x7a
push str..cryptox509x509_vfy.c
push 0x41
push 0x7f
push 0xb
call fcn.0045dc30
add esp, 0x20
sub esp, 8
mov edi, dword [ebp + 0x4c]
push edi
push 0
call fcn.004608c0
add esp, 0x10
mov esi, dword [esp + 0x1c]
test esi, esi
je 0x460be1
sub esp, 0xc
mov ebp, dword [esp + 0x28]
push ebp
call fcn.0045b5f0
add esp, 0x10
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x460bf9
sub esp, 0xc
mov edx, dword [esp + 0x40]
push edx
call fcn.00463320
add esp, 0x10
mov eax, dword [esp + 0xc]
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
ret
sub esp, 0xc
push 0x7d
push str..cryptox509x509_vfy.c
push 3
push 1
mov ecx, dword [ebp + 8]
add ecx, 0x10
push ecx
call fcn.0046fc50
add esp, 0x20
mov dword [ebp + 0x48], 1
jmp 0x460a2f
mov eax, ebx
jmp 0x460aeb
sub esp, 0xc
push 0xa3
jmp 0x460ba5
sub esp, 0xc
mov ebx, dword [ebp + 0x4c]
push ebx
call fcn.0045bc40
pop edx
pop ecx
lea esi, [eax - 1]
push esi
mov edx, dword [ebp + 0x4c]
push edx
call fcn.0045bc50
mov ebx, eax
mov dword [esp], eax
call fcn.00457c00
add esp, 0xc
push ebx
push ebx
push ebp
call dword [ebp + 0x28]
add esp, 0x10
test eax, eax
je 0x460cd1
jmp 0x460ee1
sub esp, 0xc
push ebx
call fcn.00457bf0
add esp, 0xc
push ebx
push ebx
push ebp
call dword [ebp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460cdb
push eax
push ebx
push ebp
lea esi, [esp + 0x44]
push esi
call dword [ebp + 0x24]
add esp, 0x10
test eax, eax
jl 0x460bfd
je 0x460cdb
mov ebx, dword [esp + 0x38]
sub esp, 8
push ebx
mov edx, dword [ebp + 0x4c]
push edx
call fcn.0045b9e0
add esp, 0x10
test eax, eax
je 0x461170
inc dword [esp + 0x24]
mov eax, dword [esp + 0x24]
cmp dword [esp + 0x28], eax
jge 0x460c80
sub esp, 0xc
push ebx
call fcn.00457bf0
add esp, 0xc
push ebx
push ebx
push ebp
call dword [ebp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460d52
mov edi, dword [esp + 0x34]
test edi, edi
je 0x460d12
push esi
mov ecx, dword [esp + 0x38]
push ecx
push ebx
push ebp
call dword [ebp + 0x28]
add esp, 0x10
test eax, eax
jne 0x4611cc
mov eax, dword [esp + 0x24]
cmp dword [ebp + 0x48], eax
jl 0x46119e
mov dword [ebp + 0x5c], 0x14
mov dword [ebp + 0x60], ebx
mov ecx, dword [esp + 0x24]
dec ecx
mov dword [esp + 0x30], 1
sub esp, 8
mov dword [ebp + 0x58], ecx
push ebp
push 0
call dword [esp + 0x30]
mov dword [esp + 0x1c], eax
add esp, 0x10
test eax, eax
je 0x460bb8
mov esi, dword [ebp + 0x14]
mov ebx, dword [esi + 0xc]
shr ebx, 6
mov eax, dword [ebp + 0x20]
and ebx, 1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], ebx
mov dword [esp + 0x18], eax
sub esp, 0xc
push str.OPENSSL_ALLOW_PROXY_CERTS
call sub.msvcrt.dll_getenv
add esp, 0x10
test eax, eax
mov edi, 0xffffffff
je 0x460d92
mov dword [esp + 0x10], 1
mov edx, dword [ebp + 0x48]
xor esi, esi
test edx, edx
jg 0x460e77
jmp 0x4610d0
test eax, eax
je 0x460db6
mov eax, dword [ebp + 0x14]
test byte [eax + 0xc], 0x20
je 0x460dd8
cmp edx, 1
je 0x460dd8
mov dword [ebp + 0x5c], 0x18
sub esp, 8
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x60], ebx
push ebp
push 0
call dword [esp + 0x28]
add esp, 0x10
test eax, eax
je 0x460fcf
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + 0x10]
test ecx, ecx
jle 0x460e2f
test edi, edi
push eax
setg al
and eax, 0xff
push eax
mov edi, dword [edx + 0x10]
push edi
push ebx
call fcn.0046bab0
add esp, 0x10
test eax, eax
mov edx, eax
je 0x460e0d
mov ecx, dword [ebp + 0x14]
test byte [ecx + 0xc], 0x20
je 0x460e2f
dec edx
je 0x460e2f
sub esp, 8
mov dword [ebp + 0x5c], 0x1a
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x60], ebx
push ebp
push 0
call dword [esp + 0x28]
add esp, 0x10
test eax, eax
je 0x460fcf
cmp esi, 1
jle 0x460e4c
mov eax, dword [ebx + 0x20]
cmp eax, 0xffffffff
je 0x460e4c
mov edx, dword [esp + 0x14]
lea edi, [eax + edx + 1]
cmp edi, esi
jl 0x461110
test byte [ebx + 0x29], 4
mov edi, 1
je 0x460e6d
mov eax, dword [ebx + 0x24]
cmp eax, 0xffffffff
je 0x460e67
cmp eax, esi
jl 0x461140
inc dword [esp + 0x14]
xor edi, edi
inc esi
cmp dword [ebp + 0x48], esi
jle 0x4610d0
sub esp, 8
push esi
mov eax, dword [ebp + 0x4c]
push eax
call fcn.0045bc50
mov ecx, dword [ebp + 0x14]
add esp, 0x10
test byte [ecx + 0xc], 0x10
mov ebx, eax
jne 0x460e9c
test byte [eax + 0x29], 2
jne 0x4610da
mov edx, dword [esp + 0x10]
test edx, edx
jne 0x460eae
test byte [ebx + 0x29], 4
jne 0x460fad
sub esp, 0xc
push ebx
call fcn.0046bba0
add esp, 0x10
cmp edi, 0xffffffff
mov edx, eax
je 0x460f90
test edi, edi
jne 0x460da4
test eax, eax
je 0x460dd8
mov dword [ebp + 0x5c], 0x25
jmp 0x460dbd
sub esp, 0xc
mov edi, dword [ebp + 0x4c]
push edi
call fcn.0045bc40
add esp, 0x10
dec eax
je 0x460f25
sub esp, 0xc
mov ecx, dword [ebp + 0x4c]
push ecx
call fcn.0045bb60
dec dword [ebp + 0x48]
mov dword [esp + 0x44], eax
dec dword [esp + 0x34]
pop eax
pop edx
mov edi, dword [esp + 0x2c]
dec edi
push edi
mov ebx, dword [ebp + 0x4c]
push ebx
call fcn.0045bc50
mov ebx, eax
add esp, 0x10
jmp 0x460cd1
push eax
push ebx
push ebp
lea ecx, [esp + 0x44]
push ecx
call dword [ebp + 0x24]
add esp, 0x10
test eax, eax
mov edi, eax
jle 0x460f52
sub esp, 8
mov eax, dword [esp + 0x40]
push eax
push ebx
call fcn.00457c20
add esp, 0x10
test eax, eax
je 0x461229
dec edi
mov dword [ebp + 0x5c], 0x12
mov dword [ebp + 0x60], ebx
mov dword [ebp + 0x58], esi
je 0x461214
mov dword [esp + 0x30], 1
sub esp, 8
push ebp
push 0
call dword [esp + 0x30]
mov dword [esp + 0x1c], eax
add esp, 0x10
test eax, eax
jne 0x460cd1
jmp 0x460bb8
mov ecx, dword [ebp + 0x14]
test byte [ecx + 0xc], 0x20
je 0x460dd8
cmp eax, 1
je 0x460dd8
test eax, eax
jmp 0x460db4
sub esp, 8
mov dword [ebp + 0x5c], 0x28
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x60], ebx
push ebp
push 0
call dword [esp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460eae
test eax, eax
mov dword [esp + 0xc], eax
je 0x460bb8
mov esi, dword [esp + 0x2c]
mov ebx, dword [esi + 0x14]
test ebx, ebx
jle 0x46104d
sub esp, 0xc
mov ebx, dword [ebp + 0x4c]
mov edi, dword [ebp + 0x20]
push ebx
call fcn.0045bc40
pop edx
pop ecx
lea esi, [eax - 1]
push esi
mov edx, dword [ebp + 0x4c]
push edx
call fcn.0045bc50
add esp, 0xc
push 0
mov ecx, dword [ebp + 0x14]
mov ebx, eax
mov eax, dword [ecx + 0x14]
push eax
push ebx
call fcn.0049a2b0
add esp, 0x10
cmp eax, 1
mov edx, 1
je 0x461049
cmp eax, 2
sete al
and eax, 0xff
sub esp, 8
add eax, 0x1b
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x60], ebx
mov dword [ebp + 0x5c], eax
push ebp
push 0
call edi
mov edx, eax
add esp, 0x10
mov dword [esp + 0xc], edx
mov edi, dword [esp + 0xc]
test edi, edi
je 0x460bb8
sub esp, 8
mov esi, dword [ebp + 0x4c]
push esi
push 0
call fcn.004608c0
mov dword [esp], ebp
call dword [ebp + 0x2c]
mov dword [esp + 0x1c], eax
add esp, 0x10
test eax, eax
je 0x460bb8
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x461206
sub esp, 0xc
push ebp
call eax
mov dword [esp + 0x1c], eax
add esp, 0x10
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x460bb8
mov edx, dword [esp + 0x30]
test edx, edx
jne 0x4610bf
mov ebx, dword [ebp + 0x14]
cmp byte [ebx + 0xc], 0
jns 0x4610bf
sub esp, 0xc
push ebp
call dword [ebp + 0x3c]
mov dword [esp + 0x1c], eax
add esp, 0x10
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x460bc9
jmp 0x460bb8
mov eax, 1
jmp 0x460fcf
sub esp, 8
mov dword [ebp + 0x5c], 0x22
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x60], eax
push ebp
push 0
call dword [esp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460e9c
jmp 0x460fcf
sub esp, 8
mov dword [ebp + 0x5c], 0x19
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x60], ebx
push ebp
push 0
call dword [esp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460e4c
jmp 0x460fcf
sub esp, 8
mov dword [ebp + 0x5c], 0x26
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x60], ebx
push ebp
push 0
call dword [esp + 0x28]
add esp, 0x10
test eax, eax
jne 0x460e67
jmp 0x460fcf
sub esp, 0xc
mov ebp, dword [esp + 0x44]
push ebp
call fcn.00463320
mov dword [esp], 0xfa
push str..cryptox509x509_vfy.c
push 0x41
push 0x7f
push 0xb
call fcn.0045dc30
xor eax, eax
add esp, 0x20
jmp 0x460bfd
mov dword [ebp + 0x5c], 2
jmp 0x460d26
sub esp, 0xc
push 0x6d
push str..cryptox509x509_vfy.c
push 0x69
push 0x7f
push 0xb
call fcn.0045dc30
mov eax, 0xffffffff
add esp, 0x20
jmp 0x460bfd
sub esp, 8
mov edi, dword [esp + 0x3c]
push edi
mov edx, dword [ebp + 0x4c]
push edx
call fcn.0045b9e0
inc dword [esp + 0x34]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x44], 0
add esp, 0x10
mov dword [ebp + 0x48], esi
mov dword [ebp + 0x60], ebx
mov dword [ebp + 0x5c], 0x13
jmp 0x460d29
sub esp, 0xc
push ebp
call fcn.00460610
jmp 0x46108d
sub esp, 0xc
mov esi, dword [esp + 0x44]
push esi
call fcn.00463320
add esp, 0x10
jmp 0x460f66
sub esp, 0xc
push ebx
call fcn.00463320
mov ebx, dword [esp + 0x48]
add esp, 0xc
push ebx
push esi
mov edx, dword [ebp + 0x4c]
push edx
call fcn.0045bc80
add esp, 0x10
mov dword [ebp + 0x48], 0
jmp 0x460cd1