Function at 0x4162a0
Capabilities:
Query environment variable

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov dword [esp + 4], 0x4b7a54
mov dword [esp], str.BFD_header_file_version__s_n
call sub.msvcrt.dll_printf
mov dword [esp], 0
call fcn.004a3ab0
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x3c]
mov dword [esp], 0x415da0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 4], eax
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
call fcn.00425a90
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call sub.msvcrt.dll__unlink
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.004a9de0
mov eax, dword [esp + 0x40]
test eax, eax
mov dword [esp + 0x1c], eax
je 0x41632f
mov eax, dword [esp + 0x1c]
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
xor esi, esi
mov ebx, 2
mov dword [esp], ebx
mov dword [esp + 4], 0
call fcn.0041b090
mov dword [esp], eax
call sub.msvcrt.dll_strlen
cmp esi, eax
cmovl esi, eax
add ebx, 1
cmp ebx, 0x57
jne 0x416336
mov dword [esp], str.COLUMNS
mov dword [esp + 0x20], esi
call sub.msvcrt.dll_getenv
test eax, eax
je 0x41656f
mov dword [esp], eax
call sub.msvcrt.dll_atoi
test eax, eax
je 0x41656f
sub eax, dword [esp + 0x20]
mov esi, dword [esp + 0x44]
sub eax, 1
cmp dword [esp + 0x1c], esi
mov dword [esp + 0x2c], eax
jge 0x41655b
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x2c]
imul eax, edx, 0x5c
mov ebp, edx
mov dword [esp + 0x24], eax
add eax, dword [esp + 0x4c]
mov edi, eax
mov eax, dword [edi]
sub ebx, 1
mov dword [esp], eax
call sub.msvcrt.dll_strlen
sub ebx, eax
js 0x4163ce
add ebp, 1
add edi, 0x5c
cmp esi, ebp
jne 0x4163b3
mov eax, dword [esp + 0x20]
mov dword [esp + 8], 0x4b7aab
mov dword [esp], str._n_s
mov dword [esp + 0x18], ebp
add eax, 1
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x18]
cmp ebp, edx
mov ebx, edx
je 0x416424
mov eax, dword [esp + 0x4c]
add ebx, 1
mov eax, dword [eax + esi]
mov dword [esp], 0x4b7ab2
add esi, 0x5c
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
cmp edi, ebx
jne 0x416403
mov dword [esp], 0xa
mov ebp, 2
call sub.msvcrt.dll_putchar
jmp 0x41644c
add ebp, 1
cmp ebp, 0x57
je 0x416545
mov dword [esp + 4], 0
mov dword [esp], ebp
mov edi, 0x4b7ab6
call fcn.0041b090
mov ecx, 9
mov esi, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x416440
mov dword [esp + 4], 0
mov dword [esp], ebp
call fcn.0041b090
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
mov dword [esp], str._s
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x18], eax
je 0x41652d
mov edi, dword [esp + 0x24]
mov esi, eax
mov eax, dword [esp + 0x4c]
lea ecx, [ebp - 2]
mov dword [esp + 0x28], ebp
add eax, edi
mov ebp, ecx
cmp byte [eax + ebp + 4], 0
jne 0x416506
nop
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
test eax, eax
mov ebx, eax
je 0x4164e1
mov dword [esp], 0x2d
call sub.msvcrt.dll_putchar
sub ebx, 1
jne 0x4164d0
add esi, 1
add edi, 0x5c
cmp dword [esp + 0x18], esi
je 0x416529
mov dword [esp], 0x20
call sub.msvcrt.dll_putchar
mov eax, dword [esp + 0x4c]
add eax, edi
cmp byte [eax + ebp + 4], 0
je 0x4164c0
mov ecx, dword [sym.imp.msvcrt.dll__iob]
add esi, 1
add edi, 0x5c
lea edx, [ecx + 0x20]
mov dword [esp + 4], edx
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_fputs
cmp dword [esp + 0x18], esi
jne 0x4164ed
mov ebp, dword [esp + 0x28]
mov dword [esp], 0xa
add ebp, 1
call sub.msvcrt.dll_putchar
cmp ebp, 0x57
jne 0x41644c
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x44]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x1c], esi
jl 0x41639c
mov eax, dword [esp + 0x40]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, 0x50
jmp 0x416383