Function at 0x415c40
Capabilities:
Query environment variable

Disassembly:
mov eax, dword [0x4dc468]
sub esp, 0x20
test eax, eax
push esi
jne 0x415f35
push edi
mov edi, dword [sym.imp.MSVCRT.dll_getenv]
push str.LM_DEBUG
call edi
add esp, 4
test eax, eax
je 0x415cb5
push str.LM_DEBUG
mov esi, 0x4878c8
call edi
add esp, 4
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x415c99
test cl, cl
je 0x415c95
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x415c99
add eax, 2
add esi, 2
test cl, cl
jne 0x415c75
xor eax, eax
jmp 0x415c9e
sbb eax, eax
sbb eax, 0xffffffff
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
je 0x415cb5
mov dword [0x4dc46c], 1
push str.LM_DEBUG
call edi
add esp, 4
test eax, eax
je 0x415d12
push str.LM_DEBUG
mov esi, str.Full
call edi
add esp, 4
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x415cf6
test cl, cl
je 0x415cf2
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x415cf6
add eax, 2
add esi, 2
test cl, cl
jne 0x415cd2
xor eax, eax
jmp 0x415cfb
sbb eax, eax
sbb eax, 0xffffffff
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
je 0x415d12
mov dword [0x4dc46c], 2
push 0x4dc464
push 0x486f38
push 0x4878bc
push 0
call fcn.00419e61
add esp, 0x10
mov esi, eax
test esi, esi
pop edi
je 0x415d57
cmp esi, 0xffffffd2
je 0x415d57
mov edx, dword [0x4dc464]
push 0
push str.License_initialisation_failed
push 0
push esi
push edx
call fcn.004166f0
add esp, 0x14
mov eax, esi
pop esi
add esp, 0x20
ret
mov edx, dword [0x4dc464]
xor eax, eax
mov dword [esp + 4], eax
lea ecx, [esp + 4]
mov dword [esp + 8], eax
push ecx
mov dword [esp + 0x10], eax
push 0x3a
push edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], str.KCS_DONGLE
mov dword [esp + 0x14], 0x3e9
mov byte [esp + 0x18], al
call fcn.00417b80
add esp, 0xc
test eax, eax
je 0x415daf
push 0
push str.LM_A_VENDOR_ID_DECLARE_FAILED
push 0
push eax
mov eax, dword [0x4dc464]
push eax
call fcn.004166f0
add esp, 0x14
mov eax, dword [0x4dc464]
xor ecx, ecx
mov dword [esp + 0x14], ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x18], ecx
push edx
mov dword [esp + 0x20], ecx
push 0x3a
push eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x20], str.TRIBON_DONGLE
mov dword [esp + 0x24], 0x3ea
mov byte [esp + 0x28], cl
call fcn.00417b80
add esp, 0xc
test eax, eax
je 0x415e07
mov ecx, dword [0x4dc464]
push 0
push str.LM_A_VENDOR_ID_DECLARE_FAILED
push 0
push eax
push ecx
call fcn.004166f0
add esp, 0x14
mov edx, dword [0x4dc464]
push 0x416390
push 0xc
push edx
call fcn.00417b80
mov eax, dword [0x4dc464]
push 0x4163f0
push 0xd
push eax
call fcn.00417b80
mov ecx, dword [0x4dc464]
push 0x416470
push 0xe
push ecx
call fcn.00417b80
mov edx, dword [0x4dc464]
push 1
push 0x40
push edx
call fcn.00417b80
mov eax, dword [0x4dc474]
add esp, 0x30
test eax, eax
je 0x415e7f
mov eax, dword [0x4dc464]
push 0xffffffffffffffff
push 6
push eax
call fcn.00417b80
mov ecx, dword [0x4dc464]
push 0
push 0x47
push ecx
call fcn.00417b80
add esp, 0x18
jmp 0x415eaa
mov eax, dword [0x4dc46c]
test eax, eax
je 0x415e95
mov edx, dword [0x4dc464]
push 0x1e
push 6
push edx
jmp 0x415ea2
mov eax, dword [0x4dc464]
push 0x12c
push 6
push eax
call fcn.00417b80
add esp, 0xc
mov eax, dword [0x4dc46c]
test eax, eax
je 0x415ec0
mov ecx, dword [0x4dc464]
push 0x1e
push 7
push ecx
jmp 0x415ece
mov edx, dword [0x4dc464]
push 0x12c
push 7
push edx
call fcn.00417b80
mov eax, dword [0x4dc464]
add esp, 0xc
push 2
push 9
push eax
call fcn.00417b80
mov ecx, dword [0x4dc464]
push 1
push 0x16
push ecx
call fcn.00417b80
mov edx, dword [0x4dc464]
push 0
push 0x4c
push edx
call fcn.00417b80
add esp, 0x24
mov eax, 0x4dc368
mov dword [eax], 0xffffffff
add eax, 8
cmp eax, 0x4dc458
jl 0x415f0d
cmp dword [0x4dc46c], 2
jne 0x415f2b
call fcn.00416830
mov dword [0x4dc468], 1
xor eax, eax
pop esi
add esp, 0x20
ret