Function at 0x447405
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x2c
mov ebx, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
mov edx, 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
test ebx, ebx
je 0x447437
mov edx, dword [ebx]
test esi, esi
je 0x447440
mov eax, dword [esi]
mov dword [ebp - 0x18], eax
test edi, edi
je 0x447449
mov eax, dword [edi]
mov dword [ebp - 0x14], eax
cmp dword [ebp + 0x14], 0
je 0x447457
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx]
mov dword [ebp - 0x10], eax
test edx, edx
jne 0x447494
test ebx, ebx
je 0x4474c1
mov dword [esp], 0x4472ca
call sub.cygwin1.dll_getenv
mov dword [ebx], eax
test eax, eax
jne 0x447494
call fcn.004472b4
test eax, eax
jne 0x447494
mov dword [esp], 0x4472d5
call fcn.00447d0c
test eax, eax
je 0x447494
mov dword [esp], eax
call fcn.00447a44
mov dword [ebx], eax
test ebx, ebx
je 0x4474c1
cmp dword [ebx], 0
je 0x4474c1
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x10]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x14]
mov dword [esp + 8], eax
lea eax, [ebp - 0x18]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00447705
cmp dword [ebp - 0x18], 0
jns 0x447522
mov dword [esp], 0x4472e1
call sub.cygwin1.dll_getenv
mov ebx, eax
test eax, eax
jne 0x4474f4
call fcn.004472b4
test eax, eax
jne 0x4474f0
mov dword [esp], 0x4472eb
call fcn.00447d0c
mov ebx, eax
test ebx, ebx
je 0x44751c
mov dword [esp], ebx
call sub.cygwin1.dll_atoi
mov dword [ebp - 0x18], eax
cmp eax, 0xffffffff
jge 0x44751c
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x4472f6
mov dword [esp], 0xffffffff
call fcn.0044ed0c
cmp dword [ebp - 0x18], 0
js 0x44752b
test esi, esi
je 0x44752b
mov eax, dword [ebp - 0x18]
mov dword [esi], eax
cmp dword [ebp - 0x14], 0
jns 0x44758a
mov dword [esp], 0x447313
call sub.cygwin1.dll_getenv
mov ebx, eax
test eax, eax
jne 0x44755e
call fcn.004472b4
test eax, eax
jne 0x44755a
mov dword [esp], 0x447320
call fcn.00447d0c
mov ebx, eax
test ebx, ebx
je 0x44758a
lea eax, [ebp - 0x14]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00451cfb
cmp eax, 1
je 0x44758a
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x447340
mov dword [esp], 0xffffffff
call fcn.0044ed0c
cmp dword [ebp - 0x14], 0
jle 0x4475f3
test edi, edi
je 0x4475f3
mov ebx, 0
call fcn.004472b4
test eax, eax
jne 0x4475b0
mov dword [esp], 0x447361
call fcn.00447d0c
mov ebx, eax
test ebx, ebx
je 0x4475ee
lea eax, [ebp - 0x1c]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00451cfb
cmp eax, 1
je 0x4475e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x447380
mov dword [esp], 0xffffffff
call fcn.0044ed0c
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x1c]
jle 0x4475ee
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [edi], eax
cmp dword [ebp - 0x10], 0
jns 0x447658
cmp dword [ebp + 0x14], 0
je 0x447658
mov dword [esp], 0x4473a1
call sub.cygwin1.dll_getenv
mov ebx, eax
test eax, eax
jne 0x44762c
call fcn.004472b4
test eax, eax
jne 0x447628
mov dword [esp], 0x4473b2
call fcn.00447d0c
mov ebx, eax
test ebx, ebx
je 0x447658
lea eax, [ebp - 0x10]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00451cfb
cmp eax, 1
je 0x447658
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x4473e0
mov dword [esp], 0xffffffff
call fcn.0044ed0c
cmp dword [ebp - 0x10], 0
jle 0x44766c
cmp dword [ebp + 0x14], 0
je 0x44766c
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp + 0x14]
mov dword [edx], eax
call fcn.00447b5e
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret