Function at 0x1400d1760
Capabilities:
Query environment variable

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rbx, rcx
movsxd rcx, dword [0x1400f1974]
mov rsi, rcx
imul rcx, rcx, 0x138
call sym.malloc
mov qword [0x14013b738], rax
test rax, rax
je 0x1400d192c
lea rcx, str.MQTT_C_CLIENT_TRACE
mov dword [0x14013b730], esi
call sym.getenv
mov rsi, rax
test rax, rax
je 0x1400d1868
cmp byte [rax], 0
je 0x1400d1868
cmp byte [rax], 0x4f
jne 0x1400d17c9
cmp byte [rax + 1], 0x4e
je 0x1400d1a70
lea rdx, [0x140118e54]
mov rcx, rsi
call sym.fopen
mov qword [0x14013b728], rax
test rax, rax
je 0x1400d1a7a
mov rcx, rsi
call sym.strlen
lea r12, [rax + 1]
mov rbp, rax
mov rcx, r12
call sym.malloc
mov qword [0x14013b720], rax
mov rdi, rax
test rax, rax
je 0x1400d1ade
mov rdx, rsi
mov r8, r12
lea rsi, [rbp + 3]
mov rcx, rax
call sym.memcpy
mov rcx, rsi
call sym.malloc
mov qword [0x14013b718], rax
mov rcx, rax
test rax, rax
je 0x1400d1ac5
mov r9, rdi
lea r8, str._s.0
mov rdx, rsi
call qword [sym.imp.msvcrt.dll__snprintf]
cdqe
cmp rax, rsi
jb 0x1400d1868
mov rax, qword [0x14013b718]
mov byte [rax + rbp + 2], 0
nop dword [rax]
lea rcx, str.MQTT_C_CLIENT_TRACE_MAX_LINES
call sym.getenv
test rax, rax
je 0x1400d1882
cmp byte [rax], 0
jne 0x1400d1a38
lea rcx, str.MQTT_C_CLIENT_TRACE_LEVEL
call sym.getenv
mov rsi, rax
test rax, rax
je 0x1400d189f
cmp byte [rax], 0
jne 0x1400d1940
lea r12, str.
mov ecx, 3
mov rdx, r12
call fcn.1400d14b0
lea rdx, str.___________________Trace_Output
mov ecx, 3
call fcn.1400d14b0
test rbx, rbx
je 0x1400d191f
mov r9, qword [rbx]
test r9, r9
je 0x1400d191f
mov rbp, qword [sym.imp.msvcrt.dll__snprintf]
lea rsi, [0x14013b500]
lea rdi, str._s:__s
nop word cs:[rax + rax]
mov rax, qword [rbx + 8]
mov r8, rdi
mov edx, 0x200
mov rcx, rsi
add rbx, 0x10
mov qword [rsp + 0x20], rax
call rbp
mov rdx, rsi
mov ecx, 3
call fcn.1400d14b0
mov r9, qword [rbx]
test r9, r9
jne 0x1400d18f0
mov rdx, r12
mov ecx, 3
call fcn.1400d14b0
mov eax, 0xffffffff
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
lea rdx, str.MAXIMUM
mov rcx, rax
call sym.strcmp
test eax, eax
je 0x1400d1a58
lea rdx, str.TRACE_MAXIMUM
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1a58
lea rdx, str.MEDIUM
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1a98
lea rdx, str.TRACE_MEDIUM
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1a98
lea rdx, str.MINIMUM
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1aa7
lea rdx, str.TRACE_MINIMUM
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1aa7
lea rdx, str.PROTOCOL
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1ab6
lea rdx, str.TRACE_PROTOCOL
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1ab6
lea rdx, str.ERROR
mov rcx, rsi
call sym.strcmp
test eax, eax
je 0x1400d1a22
lea rdx, str.TRACE_ERROR
mov rcx, rsi
call sym.strcmp
test eax, eax
jne 0x1400d189f
mov dword [0x1400f1960], 5
jmp 0x1400d189f
mov rcx, rax
call sym.atoi
mov edx, 0x3e8
test eax, eax
cmovle eax, edx
mov dword [0x1400f1964], eax
jmp 0x1400d1882
mov dword [0x1400f1970], 1
jmp 0x1400d189f
cmp byte [rax + 2], 0
jne 0x1400d17c9
mov ecx, 1
call qword [dbg.__acrt_iob_func]
mov qword [0x14013b728], rax
jmp 0x1400d1868
mov dword [0x1400f1970], 2
jmp 0x1400d189f
mov dword [0x1400f1970], 3
jmp 0x1400d189f
mov dword [0x1400f1960], 4
jmp 0x1400d189f
mov rcx, qword [0x14013b738]
call sym.free
mov rcx, rdi
call sym.free
jmp 0x1400d192c
mov rcx, qword [0x14013b738]
call sym.free
jmp 0x1400d192c