Function at 0x6b472d90
Capabilities:
Query environment variable

Disassembly:
mov eax, dword [0x6b62a2c0]
test eax, eax
je 0x6b472da0
ret
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
mov dword [0x6b62a2c0], 1
mov dword [esp + 8], 0x30
mov dword [esp + 4], 0x6b62a260
mov dword [esp], str.OPENSSL_ia32cap
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
sub eax, 1
sub esp, 0xc
cmp eax, 0x2e
ja 0x6b472ff0
movzx ebp, word [0x6b62a260]
xor eax, eax
mov edi, 0xa
cmp bp, 0x7e
sete al
add eax, eax
cmp word [eax + 0x6b62a260], 0x30
lea esi, [eax + 0x6b62a260]
je 0x6b473060
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
lea esi, [esi]
nop
movzx ebx, word [esi]
mov dword [esp + 4], 4
add esi, 2
mov dword [esp], ebx
call sym._ossl_ctype_check
lea ecx, [ebx - 0x30]
test eax, eax
jne 0x6b472f5b
mov dword [esp + 4], 0x10
mov dword [esp], ebx
call sym._ossl_ctype_check
test eax, eax
jne 0x6b472f50
cmp bp, 0x7e
je 0x6b473010
movzx esi, word [0x6b62a260]
cmp si, 0x3a
je 0x6b473098
test si, si
je 0x6b472fd0
mov eax, 0x6b62a260
jmp 0x6b472e94
add eax, 2
test si, si
je 0x6b472fd0
mov edx, esi
movzx esi, word [eax + 2]
cmp dx, 0x3a
jne 0x6b472e88
xor edx, edx
cmp si, 0x7e
sete dl
add edx, 1
lea edi, [eax + edx*2]
cmp word [edi], 0x30
je 0x6b4730e8
mov ebp, 0xa
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
nop
movzx ebx, word [edi]
mov dword [esp + 4], 4
add edi, 2
mov dword [esp], ebx
call sym._ossl_ctype_check
lea ecx, [ebx - 0x30]
test eax, eax
jne 0x6b472f9b
mov dword [esp + 4], 0x10
mov dword [esp], ebx
call sym._ossl_ctype_check
test eax, eax
jne 0x6b472f90
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov edx, edi
mov eax, ebp
cmp si, 0x7e
je 0x6b473080
mov dword [0x6b62da0c], edi
mov dword [0x6b62da10], ebp
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov eax, edi
mov dword [0x6b62da08], ebp
or ah, 4
mov dword [0x6b62da04], eax
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], ebx
call sym._ossl_tolower
lea ecx, [eax - 0x57]
cmp edi, ecx
jbe 0x6b472e59
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ebx, edx
mul edi
imul ebx, edi
add edx, ebx
xor ebx, ebx
add ecx, eax
adc ebx, edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebx
jmp 0x6b472e20
mov dword [esp], ebx
call sym._ossl_tolower
lea ecx, [eax - 0x57]
cmp ebp, ecx
jbe 0x6b472f09
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov ebx, edx
mul ebp
imul ebx, ebp
add edx, ebx
xor ebx, ebx
add ecx, eax
adc ebx, edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ebx
jmp 0x6b472ed0
mov dword [0x6b62da0c], 0
mov dword [0x6b62da10], 0
jmp 0x6b472f2b
mov dword [esp], 0x6b62da04
call sym._OPENSSL_ia32_cpuid
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
jmp 0x6b472f2b
mov dword [esp], 0x6b62da04
call sym._OPENSSL_ia32_cpuid
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ecx, edx
mov ebx, eax
mov edx, ebp
mov eax, edi
not edx
not eax
and edx, ecx
mov ecx, edi
and eax, ebx
and ecx, 0x1000000
je 0x6b4730c0
and edx, 0xedfff7fd
mov dword [esp + 0x10], eax
movzx esi, word [0x6b62a260]
mov dword [esp + 0x14], edx
jmp 0x6b472e74
movzx eax, word [esi + 2]
mov dword [esp], eax
call sym._ossl_tolower
cmp eax, 0x78
je 0x6b4730d4
add esi, 2
mov edi, 8
jmp 0x6b472e08
not edx
not eax
and dword [0x6b62da0c], edx
and dword [0x6b62da10], eax
jmp 0x6b472f2b
mov dword [esp], 0x6b62da04
call sym._OPENSSL_ia32_cpuid
movzx esi, word [0x6b62a260]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
jmp 0x6b472e74
mov dword [esp + 0x10], eax
movzx esi, word [0x6b62a260]
mov dword [esp + 0x14], edx
jmp 0x6b472e74
add esi, 4
mov edi, 0x10
jmp 0x6b472e08
movzx eax, word [edi + 2]
mov dword [esp], eax
call sym._ossl_tolower
cmp eax, 0x78
je 0x6b473106
add edi, 2
mov ebp, 8
jmp 0x6b472ebe
add edi, 4
mov ebp, 0x10
jmp 0x6b472ebe