Function at 0x140131da0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x80
mov rdi, rsp
mov ecx, 0x20
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x90]
mov qword [rax + 8], 0
xor eax, eax
test eax, eax
je 0x140131e01
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov dword [rax + 0x28], 1
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x90]
call qword [rax]
mov qword [rsp + 0x48], 0x3b9aca00
cmp dword [rsp + 0x48], 0x3b9aca00
jne 0x140131e1a
xor eax, eax
test eax, eax
je 0x140131e41
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov dword [rax + 0x28], 2
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x90]
call qword [rax]
mov rcx, qword [rsp + 0x90]
call fcn.140136510
mov dword [rsp + 0x34], eax
mov edx, 0x98
mov rcx, qword [rsp + 0x90]
call fcn.140136310
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x140131ec1
mov rcx, qword [rsp + 0x90]
call fcn.140136530
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov dword [rax + 0x28], reloc.WS2_32.dll_getservbyport
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov ecx, 4
imul rcx, rcx, 0
mov dword [rax + rcx + 0x2c], 0
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x90]
call qword [rax]
mov rax, qword [rsp + 0x20]
lea rcx, [fcn.140132110]
mov qword [rax], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [fcn.140132410]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [fcn.140132590]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [fcn.140132740]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [0x140132910]
mov qword [rax + 0x20], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [0x140132a20]
mov qword [rax + 0x28], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [0x140132b30]
mov qword [rax + 0x30], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [0x140133310]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [0x1401335c0]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [fcn.140133870]
mov qword [rax + 0x48], rcx
mov rax, qword [rsp + 0x20]
lea rcx, [0x140133b00]
mov qword [rax + 0x50], rcx
mov rax, qword [rsp + 0x20]
mov dword [rax + 0x5c], 0x3b9aca00
mov rax, qword [rsp + 0x20]
mov ecx, dword [rsp + 0x34]
mov dword [rax + 0x58], ecx
mov dword [rsp + 0x44], 1
jmp 0x140131f9c
mov eax, dword [rsp + 0x44]
dec eax
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
jl 0x140131fcb
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x20]
mov qword [rcx + rax*8 + 0x60], 0
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x20]
mov qword [rcx + rax*8 + 0x70], 0
jmp 0x140131f92
mov rax, qword [rsp + 0x20]
mov qword [rax + 0x80], 0
mov rax, qword [rsp + 0x20]
mov qword [rax + 0x88], 0
mov rax, qword [rsp + 0x20]
mov dword [rax + 0x90], 0x98
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x90]
mov qword [rcx + 8], rax
lea rcx, str.JPEGMEM
call qword [sym.imp.MSVCR120D.dll_getenv]
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
je 0x14013207a
mov byte [rsp + 0x64], 0x78
lea r9, [rsp + 0x64]
lea r8, [rsp + 0x34]
lea rdx, str._ld_c
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.MSVCR120D.dll_sscanf]
test eax, eax
jle 0x14013207a
movsx eax, byte [rsp + 0x64]
cmp eax, 0x6d
je 0x14013205e
movsx eax, byte [rsp + 0x64]
cmp eax, 0x4d
jne 0x14013206a
imul eax, dword [rsp + 0x34], 0x3e8
mov dword [rsp + 0x34], eax
imul eax, dword [rsp + 0x34], 0x3e8
mov rcx, qword [rsp + 0x20]
mov dword [rcx + 0x58], eax
mov rcx, rsp
lea rdx, [0x140249fb0]
call fcn.1401b1d70
add rsp, 0x80
pop rdi
ret