#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ fprintf(int /*<<< orphan*/, char *);
int /*<<< orphan*/ stderr;
void LNat_Print_Internal_Error(int error) {
  switch (error) {
  case 0:
    (void)fprintf(stderr, "No Error Occured.\n");
    break;
  case -499:
    (void)fprintf(stderr, "Bad Malloc.\n");
    break;
  case -498:
    (void)fprintf(stderr, "Bad Params.\n");
    break;
  case -999:
    (void)fprintf(stderr, "Socket Connection Failed.\n");
    break;
  case -998:
    (void)fprintf(stderr, "Socket Send Timeout.\n");
    break;
  case -997:
    (void)fprintf(stderr, "Socket Send Failure.\n");
    break;
  case -996:
    (void)fprintf(stderr, "Socket Recv Timeout.\n");
    break;
  case -995:
    (void)fprintf(stderr, "Socket Recv Failure.\n");
    break;
  case -994:
    (void)fprintf(stderr, "WSAStartup Failure.\n");
    break;
  case -993:
    (void)fprintf(stderr, "Invalid Winsock library found.\n");
    break;
  case -992:
    (void)fprintf(stderr, "Gethostbyname failed.\n");
    break;
  case -991:
    (void)fprintf(stderr, "Invalid Socket.\n");
    break;
  case -990:
    (void)fprintf(stderr, "IOCTL Failed.\n");
    break;
  case -989:
    (void)fprintf(stderr, "GETFL Failed.\n");
    break;
  case -988:
    (void)fprintf(stderr, "SETFL Failed.\n");
    break;
  case -987:
    (void)fprintf(stderr, "getsockname() Failed.");
    break;
  case -899:
    (void)fprintf(stderr, "HTTP Receive failed.\n");
    break;
  case -898:
    (void)fprintf(stderr, "HTTP Received more data than can fit in buffer.\n");
    break;
  case -897:
    (void)fprintf(stderr, "HTTP port given is out of range.\n");
    break;
  case -896:
    (void)fprintf(stderr, "No Content-Length found in HTTP Header.\n");
    break;
  case -895:
    (void)fprintf(stderr,
                  "Didn't receive an HTTP/1.1 200 OK Header for HTTP.\n");
    break;
  case -894:
    (void)fprintf(stderr, "URL is not a valid HTTP URL.\n");
    break;
  case -799:
    (void)fprintf(stderr, "SSDP Receive failed.\n");
    break;
  case -798:
    (void)fprintf(stderr, "SSDP Received more data than can fit in buffer.\n");
    break;
  case -797:
    (void)fprintf(stderr,
                  "Didn't receive an HTTP/1.1 200 OK Header for SSDP.\n");
    break;
  case -796:
    (void)fprintf(stderr, "No location tag found in SSDP header.\n");
    break;
  case -795:
    (void)fprintf(stderr, "No location found in SSDP header.\n");
    break;
  case -699:
    (void)fprintf(stderr, "Bad Description XML could not be parsed.\n");
    break;
  case -697:
    (void)fprintf(stderr, "Get Public IP Failed.\n");
    break;
  case -696:
    (void)fprintf(stderr, "Bad XML Response from Get Public IP.\n");
    break;
  case -695:
    (void)fprintf(stderr, "URL Over Maximum Allowed Length.\n");
    break;
  default:
    (void)fprintf(stderr, "Some Error.\n");
    break;
  }
}


x86 assembly (clang, -O0):
<LNat_Print_Internal_Error>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
mov    %edi,-0x4(%rbp)
mov    -0x4(%rbp),%eax
mov    %eax,-0x8(%rbp)
sub    $0xfffffc19,%eax
je     13b6 <LNat_Print_Internal_Error+0x2a6>
jmp    1131 <LNat_Print_Internal_Error+0x21>
mov    -0x8(%rbp),%eax
sub    $0xfffffc1a,%eax
je     13d0 <LNat_Print_Internal_Error+0x2c0>
jmp    1144 <LNat_Print_Internal_Error+0x34>
mov    -0x8(%rbp),%eax
sub    $0xfffffc1b,%eax
je     13ea <LNat_Print_Internal_Error+0x2da>
jmp    1157 <LNat_Print_Internal_Error+0x47>
mov    -0x8(%rbp),%eax
sub    $0xfffffc1c,%eax
je     1404 <LNat_Print_Internal_Error+0x2f4>
jmp    116a <LNat_Print_Internal_Error+0x5a>
mov    -0x8(%rbp),%eax
sub    $0xfffffc1d,%eax
je     141e <LNat_Print_Internal_Error+0x30e>
jmp    117d <LNat_Print_Internal_Error+0x6d>
mov    -0x8(%rbp),%eax
sub    $0xfffffc1e,%eax
je     1438 <LNat_Print_Internal_Error+0x328>
jmp    1190 <LNat_Print_Internal_Error+0x80>
mov    -0x8(%rbp),%eax
sub    $0xfffffc1f,%eax
je     1452 <LNat_Print_Internal_Error+0x342>
jmp    11a3 <LNat_Print_Internal_Error+0x93>
mov    -0x8(%rbp),%eax
sub    $0xfffffc20,%eax
je     146c <LNat_Print_Internal_Error+0x35c>
jmp    11b6 <LNat_Print_Internal_Error+0xa6>
mov    -0x8(%rbp),%eax
sub    $0xfffffc21,%eax
je     1486 <LNat_Print_Internal_Error+0x376>
jmp    11c9 <LNat_Print_Internal_Error+0xb9>
mov    -0x8(%rbp),%eax
sub    $0xfffffc22,%eax
je     14a0 <LNat_Print_Internal_Error+0x390>
jmp    11dc <LNat_Print_Internal_Error+0xcc>
mov    -0x8(%rbp),%eax
sub    $0xfffffc23,%eax
je     14ba <LNat_Print_Internal_Error+0x3aa>
jmp    11ef <LNat_Print_Internal_Error+0xdf>
mov    -0x8(%rbp),%eax
sub    $0xfffffc24,%eax
je     14d4 <LNat_Print_Internal_Error+0x3c4>
jmp    1202 <LNat_Print_Internal_Error+0xf2>
mov    -0x8(%rbp),%eax
sub    $0xfffffc25,%eax
je     14ee <LNat_Print_Internal_Error+0x3de>
jmp    1215 <LNat_Print_Internal_Error+0x105>
mov    -0x8(%rbp),%eax
sub    $0xfffffc7d,%eax
je     1508 <LNat_Print_Internal_Error+0x3f8>
jmp    1228 <LNat_Print_Internal_Error+0x118>
mov    -0x8(%rbp),%eax
sub    $0xfffffc7e,%eax
je     1522 <LNat_Print_Internal_Error+0x412>
jmp    123b <LNat_Print_Internal_Error+0x12b>
mov    -0x8(%rbp),%eax
sub    $0xfffffc7f,%eax
je     153c <LNat_Print_Internal_Error+0x42c>
jmp    124e <LNat_Print_Internal_Error+0x13e>
mov    -0x8(%rbp),%eax
sub    $0xfffffc80,%eax
je     1556 <LNat_Print_Internal_Error+0x446>
jmp    1261 <LNat_Print_Internal_Error+0x151>
mov    -0x8(%rbp),%eax
sub    $0xfffffc81,%eax
je     1570 <LNat_Print_Internal_Error+0x460>
jmp    1274 <LNat_Print_Internal_Error+0x164>
mov    -0x8(%rbp),%eax
sub    $0xfffffc82,%eax
je     158a <LNat_Print_Internal_Error+0x47a>
jmp    1287 <LNat_Print_Internal_Error+0x177>
mov    -0x8(%rbp),%eax
sub    $0xfffffce1,%eax
je     15a4 <LNat_Print_Internal_Error+0x494>
jmp    129a <LNat_Print_Internal_Error+0x18a>
mov    -0x8(%rbp),%eax
sub    $0xfffffce2,%eax
je     15be <LNat_Print_Internal_Error+0x4ae>
jmp    12ad <LNat_Print_Internal_Error+0x19d>
mov    -0x8(%rbp),%eax
sub    $0xfffffce3,%eax
je     15d8 <LNat_Print_Internal_Error+0x4c8>
jmp    12c0 <LNat_Print_Internal_Error+0x1b0>
mov    -0x8(%rbp),%eax
sub    $0xfffffce4,%eax
je     15f2 <LNat_Print_Internal_Error+0x4e2>
jmp    12d3 <LNat_Print_Internal_Error+0x1c3>
mov    -0x8(%rbp),%eax
sub    $0xfffffce5,%eax
je     160c <LNat_Print_Internal_Error+0x4fc>
jmp    12e6 <LNat_Print_Internal_Error+0x1d6>
mov    -0x8(%rbp),%eax
sub    $0xfffffd45,%eax
je     1626 <LNat_Print_Internal_Error+0x516>
jmp    12f9 <LNat_Print_Internal_Error+0x1e9>
mov    -0x8(%rbp),%eax
sub    $0xfffffd47,%eax
je     1640 <LNat_Print_Internal_Error+0x530>
jmp    130c <LNat_Print_Internal_Error+0x1fc>
mov    -0x8(%rbp),%eax
sub    $0xfffffd48,%eax
je     165a <LNat_Print_Internal_Error+0x54a>
jmp    131f <LNat_Print_Internal_Error+0x20f>
mov    -0x8(%rbp),%eax
sub    $0xfffffd49,%eax
je     1674 <LNat_Print_Internal_Error+0x564>
jmp    1332 <LNat_Print_Internal_Error+0x222>
mov    -0x8(%rbp),%eax
sub    $0xfffffe0d,%eax
je     1382 <LNat_Print_Internal_Error+0x272>
jmp    1345 <LNat_Print_Internal_Error+0x235>
mov    -0x8(%rbp),%eax
sub    $0xfffffe0e,%eax
je     139c <LNat_Print_Internal_Error+0x28c>
jmp    1358 <LNat_Print_Internal_Error+0x248>
mov    -0x8(%rbp),%eax
test   %eax,%eax
jne    168e <LNat_Print_Internal_Error+0x57e>
jmp    1368 <LNat_Print_Internal_Error+0x258>
mov    0x2c71(%rip),%rax
mov    (%rax),%edi
lea    0xc88(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2c57(%rip),%rax
mov    (%rax),%edi
lea    0xc81(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2c3d(%rip),%rax
mov    (%rax),%edi
lea    0xc74(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2c23(%rip),%rax
mov    (%rax),%edi
lea    0xc67(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2c09(%rip),%rax
mov    (%rax),%edi
lea    0xc68(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2bef(%rip),%rax
mov    (%rax),%edi
lea    0xc64(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2bd5(%rip),%rax
mov    (%rax),%edi
lea    0xc60(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2bbb(%rip),%rax
mov    (%rax),%edi
lea    0xc5c(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2ba1(%rip),%rax
mov    (%rax),%edi
lea    0xc58(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2b87(%rip),%rax
mov    (%rax),%edi
lea    0xc53(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2b6d(%rip),%rax
mov    (%rax),%edi
lea    0xc59(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2b53(%rip),%rax
mov    (%rax),%edi
lea    0xc56(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2b39(%rip),%rax
mov    (%rax),%edi
lea    0xc4d(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2b1f(%rip),%rax
mov    (%rax),%edi
lea    0xc42(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2b05(%rip),%rax
mov    (%rax),%edi
lea    0xc37(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2aeb(%rip),%rax
mov    (%rax),%edi
lea    0xc2c(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2ad1(%rip),%rax
mov    (%rax),%edi
lea    0xc28(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2ab7(%rip),%rax
mov    (%rax),%edi
lea    0xc24(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2a9d(%rip),%rax
mov    (%rax),%edi
lea    0xc3b(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2a83(%rip),%rax
mov    (%rax),%edi
lea    0xc43(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2a69(%rip),%rax
mov    (%rax),%edi
lea    0xc52(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2a4f(%rip),%rax
mov    (%rax),%edi
lea    0xc6c(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2a35(%rip),%rax
mov    (%rax),%edi
lea    0xc70(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2a1b(%rip),%rax
mov    (%rax),%edi
lea    0xc6c(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2a01(%rip),%rax
mov    (%rax),%edi
lea    0xc83(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x29e7(%rip),%rax
mov    (%rax),%edi
lea    0xc9d(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x29cd(%rip),%rax
mov    (%rax),%edi
lea    0xcaa(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x29b3(%rip),%rax
mov    (%rax),%edi
lea    0xcb3(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2999(%rip),%rax
mov    (%rax),%edi
lea    0xcc3(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x297f(%rip),%rax
mov    (%rax),%edi
lea    0xcc0(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x2965(%rip),%rax
mov    (%rax),%edi
lea    0xccc(%rip),%rsi
call   1030 <fprintf@plt>
jmp    16a3 <LNat_Print_Internal_Error+0x593>
mov    0x294b(%rip),%rax
mov    (%rax),%edi
lea    0xcd4(%rip),%rsi
call   1030 <fprintf@plt>
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<LNat_Print_Internal_Error>:
cmp    $0xfffffd44,%edi
jg     1146 <LNat_Print_Internal_Error+0x36>
add    $0x3e7,%edi
cmp    $0xcc,%edi
ja     12cb <LNat_Print_Internal_Error+0x1bb>
lea    0xecf(%rip),%rax
movslq (%rax,%rdi,4),%rcx
add    %rax,%rcx
jmp    *%rcx
lea    0x1234(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
cmp    $0xfffffe0c,%edi
jg     1179 <LNat_Print_Internal_Error+0x69>
add    $0x2bb,%edi
cmp    $0x4,%edi
ja     12cb <LNat_Print_Internal_Error+0x1bb>
lea    0x11d0(%rip),%rax
movslq (%rax,%rdi,4),%rcx
add    %rax,%rcx
jmp    *%rcx
lea    0x14bd(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
test   %edi,%edi
je     12b9 <LNat_Print_Internal_Error+0x1a9>
cmp    $0xfffffe0e,%edi
je     12c2 <LNat_Print_Internal_Error+0x1b2>
cmp    $0xfffffe0d,%edi
jne    12cb <LNat_Print_Internal_Error+0x1bb>
lea    0x11bb(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x11e4(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x11ee(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x11f8(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1202(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x120c(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1215(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1229(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1234(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1239(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x123c(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x123f(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1242(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x124c(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1256(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x127b(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1294(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x12b4(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x12df(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x12f4(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1301(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1329(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1354(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1372(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x13b6(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x13c4(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x13e1(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x1088(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x109f(%rip),%rsi
jmp    12d2 <LNat_Print_Internal_Error+0x1c2>
lea    0x13e8(%rip),%rsi
mov    0x2d07(%rip),%rax
mov    (%rax),%edi
jmp    1030 <fprintf@plt>

LLVM IR (-O0):
@stderr = global i32 0
@.str = [19 x i8] c"No Error Occured.\0A\00"
@.str.1 = [13 x i8] c"Bad Malloc.\0A\00"
@.str.2 = [13 x i8] c"Bad Params.\0A\00"
@.str.3 = [27 x i8] c"Socket Connection Failed.\0A\00"
@.str.4 = [22 x i8] c"Socket Send Timeout.\0A\00"
@.str.5 = [22 x i8] c"Socket Send Failure.\0A\00"
@.str.6 = [22 x i8] c"Socket Recv Timeout.\0A\00"
@.str.7 = [22 x i8] c"Socket Recv Failure.\0A\00"
@.str.8 = [21 x i8] c"WSAStartup Failure.\0A\00"
@.str.9 = [32 x i8] c"Invalid Winsock library found.\0A\00"
@.str.10 = [23 x i8] c"Gethostbyname failed.\0A\00"
@.str.11 = [17 x i8] c"Invalid Socket.\0A\00"
@.str.12 = [15 x i8] c"IOCTL Failed.\0A\00"
@.str.13 = [15 x i8] c"GETFL Failed.\0A\00"
@.str.14 = [15 x i8] c"SETFL Failed.\0A\00"
@.str.15 = [22 x i8] c"getsockname() Failed.\00"
@.str.16 = [22 x i8] c"HTTP Receive failed.\0A\00"
@.str.17 = [49 x i8] c"HTTP Received more data than can fit in buffer.\0A\00"
@.str.18 = [34 x i8] c"HTTP port given is out of range.\0A\00"
@.str.19 = [41 x i8] c"No Content-Length found in HTTP Header.\0A\00"
@.str.20 = [52 x i8] c"Didn't receive an HTTP/1.1 200 OK Header for HTTP.\0A\00"
@.str.21 = [30 x i8] c"URL is not a valid HTTP URL.\0A\00"
@.str.22 = [22 x i8] c"SSDP Receive failed.\0A\00"
@.str.23 = [49 x i8] c"SSDP Received more data than can fit in buffer.\0A\00"
@.str.24 = [52 x i8] c"Didn't receive an HTTP/1.1 200 OK Header for SSDP.\0A\00"
@.str.25 = [39 x i8] c"No location tag found in SSDP header.\0A\00"
@.str.26 = [35 x i8] c"No location found in SSDP header.\0A\00"
@.str.27 = [42 x i8] c"Bad Description XML could not be parsed.\0A\00"
@.str.28 = [23 x i8] c"Get Public IP Failed.\0A\00"
@.str.29 = [38 x i8] c"Bad XML Response from Get Public IP.\0A\00"
@.str.30 = [34 x i8] c"URL Over Maximum Allowed Length.\0A\00"
@.str.31 = [13 x i8] c"Some Error.\0A\00"
define void @LNat_Print_Internal_Error(i32 %0) {
%2 = alloca i32
store i32 %0, i32* %2
%3 = load i32, i32* %2
switch i32 %3, label %97 [
i32 0, label %4
i32 -499, label %7
i32 -498, label %10
i32 -999, label %13
i32 -998, label %16
i32 -997, label %19
i32 -996, label %22
i32 -995, label %25
i32 -994, label %28
i32 -993, label %31
i32 -992, label %34
i32 -991, label %37
i32 -990, label %40
i32 -989, label %43
i32 -988, label %46
i32 -987, label %49
i32 -899, label %52
i32 -898, label %55
i32 -897, label %58
i32 -896, label %61
i32 -895, label %64
i32 -894, label %67
i32 -799, label %70
i32 -798, label %73
i32 -797, label %76
i32 -796, label %79
i32 -795, label %82
i32 -699, label %85
i32 -697, label %88
i32 -696, label %91
i32 -695, label %94
]
4: ; preds = %1
%5 = load i32, i32* @stderr
%6 = call i32 @fprintf(i32 %5, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str, i64 0, i64 0))
br label %100
7: ; preds = %1
%8 = load i32, i32* @stderr
%9 = call i32 @fprintf(i32 %8, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.1, i64 0, i64 0))
br label %100
10: ; preds = %1
%11 = load i32, i32* @stderr
%12 = call i32 @fprintf(i32 %11, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.2, i64 0, i64 0))
br label %100
13: ; preds = %1
%14 = load i32, i32* @stderr
%15 = call i32 @fprintf(i32 %14, i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.3, i64 0, i64 0))
br label %100
16: ; preds = %1
%17 = load i32, i32* @stderr
%18 = call i32 @fprintf(i32 %17, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.4, i64 0, i64 0))
br label %100
19: ; preds = %1
%20 = load i32, i32* @stderr
%21 = call i32 @fprintf(i32 %20, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0))
br label %100
22: ; preds = %1
%23 = load i32, i32* @stderr
%24 = call i32 @fprintf(i32 %23, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.6, i64 0, i64 0))
br label %100
25: ; preds = %1
%26 = load i32, i32* @stderr
%27 = call i32 @fprintf(i32 %26, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.7, i64 0, i64 0))
br label %100
28: ; preds = %1
%29 = load i32, i32* @stderr
%30 = call i32 @fprintf(i32 %29, i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.8, i64 0, i64 0))
br label %100
31: ; preds = %1
%32 = load i32, i32* @stderr
%33 = call i32 @fprintf(i32 %32, i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.9, i64 0, i64 0))
br label %100
34: ; preds = %1
%35 = load i32, i32* @stderr
%36 = call i32 @fprintf(i32 %35, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.10, i64 0, i64 0))
br label %100
37: ; preds = %1
%38 = load i32, i32* @stderr
%39 = call i32 @fprintf(i32 %38, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.11, i64 0, i64 0))
br label %100
40: ; preds = %1
%41 = load i32, i32* @stderr
%42 = call i32 @fprintf(i32 %41, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.12, i64 0, i64 0))
br label %100
43: ; preds = %1
%44 = load i32, i32* @stderr
%45 = call i32 @fprintf(i32 %44, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.13, i64 0, i64 0))
br label %100
46: ; preds = %1
%47 = load i32, i32* @stderr
%48 = call i32 @fprintf(i32 %47, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.14, i64 0, i64 0))
br label %100
49: ; preds = %1
%50 = load i32, i32* @stderr
%51 = call i32 @fprintf(i32 %50, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.15, i64 0, i64 0))
br label %100
52: ; preds = %1
%53 = load i32, i32* @stderr
%54 = call i32 @fprintf(i32 %53, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.16, i64 0, i64 0))
br label %100
55: ; preds = %1
%56 = load i32, i32* @stderr
%57 = call i32 @fprintf(i32 %56, i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.17, i64 0, i64 0))
br label %100
58: ; preds = %1
%59 = load i32, i32* @stderr
%60 = call i32 @fprintf(i32 %59, i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.18, i64 0, i64 0))
br label %100
61: ; preds = %1
%62 = load i32, i32* @stderr
%63 = call i32 @fprintf(i32 %62, i8* getelementptr inbounds ([41 x i8], [41 x i8]* @.str.19, i64 0, i64 0))
br label %100
64: ; preds = %1
%65 = load i32, i32* @stderr
%66 = call i32 @fprintf(i32 %65, i8* getelementptr inbounds ([52 x i8], [52 x i8]* @.str.20, i64 0, i64 0))
br label %100
67: ; preds = %1
%68 = load i32, i32* @stderr
%69 = call i32 @fprintf(i32 %68, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.21, i64 0, i64 0))
br label %100
70: ; preds = %1
%71 = load i32, i32* @stderr
%72 = call i32 @fprintf(i32 %71, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.22, i64 0, i64 0))
br label %100
73: ; preds = %1
%74 = load i32, i32* @stderr
%75 = call i32 @fprintf(i32 %74, i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.23, i64 0, i64 0))
br label %100
76: ; preds = %1
%77 = load i32, i32* @stderr
%78 = call i32 @fprintf(i32 %77, i8* getelementptr inbounds ([52 x i8], [52 x i8]* @.str.24, i64 0, i64 0))
br label %100
79: ; preds = %1
%80 = load i32, i32* @stderr
%81 = call i32 @fprintf(i32 %80, i8* getelementptr inbounds ([39 x i8], [39 x i8]* @.str.25, i64 0, i64 0))
br label %100
82: ; preds = %1
%83 = load i32, i32* @stderr
%84 = call i32 @fprintf(i32 %83, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.26, i64 0, i64 0))
br label %100
85: ; preds = %1
%86 = load i32, i32* @stderr
%87 = call i32 @fprintf(i32 %86, i8* getelementptr inbounds ([42 x i8], [42 x i8]* @.str.27, i64 0, i64 0))
br label %100
88: ; preds = %1
%89 = load i32, i32* @stderr
%90 = call i32 @fprintf(i32 %89, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.28, i64 0, i64 0))
br label %100
91: ; preds = %1
%92 = load i32, i32* @stderr
%93 = call i32 @fprintf(i32 %92, i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.29, i64 0, i64 0))
br label %100
94: ; preds = %1
%95 = load i32, i32* @stderr
%96 = call i32 @fprintf(i32 %95, i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.30, i64 0, i64 0))
br label %100
97: ; preds = %1
%98 = load i32, i32* @stderr
%99 = call i32 @fprintf(i32 %98, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.31, i64 0, i64 0))
br label %100
100: ; preds = %97, %94, %91, %88, %85, %82, %79, %76, %73, %70, %67, %64, %61, %58, %55, %52, %49, %46, %43, %40, %37, %34, %31, %28, %25, %22, %19, %16, %13, %10, %7, %4
ret void
}

LLVM IR (-O2):
@stderr = global i32 0
@.str = [19 x i8] c"No Error Occured.\0A\00"
@.str.1 = [13 x i8] c"Bad Malloc.\0A\00"
@.str.2 = [13 x i8] c"Bad Params.\0A\00"
@.str.3 = [27 x i8] c"Socket Connection Failed.\0A\00"
@.str.4 = [22 x i8] c"Socket Send Timeout.\0A\00"
@.str.5 = [22 x i8] c"Socket Send Failure.\0A\00"
@.str.6 = [22 x i8] c"Socket Recv Timeout.\0A\00"
@.str.7 = [22 x i8] c"Socket Recv Failure.\0A\00"
@.str.8 = [21 x i8] c"WSAStartup Failure.\0A\00"
@.str.9 = [32 x i8] c"Invalid Winsock library found.\0A\00"
@.str.10 = [23 x i8] c"Gethostbyname failed.\0A\00"
@.str.11 = [17 x i8] c"Invalid Socket.\0A\00"
@.str.12 = [15 x i8] c"IOCTL Failed.\0A\00"
@.str.13 = [15 x i8] c"GETFL Failed.\0A\00"
@.str.14 = [15 x i8] c"SETFL Failed.\0A\00"
@.str.15 = [22 x i8] c"getsockname() Failed.\00"
@.str.16 = [22 x i8] c"HTTP Receive failed.\0A\00"
@.str.17 = [49 x i8] c"HTTP Received more data than can fit in buffer.\0A\00"
@.str.18 = [34 x i8] c"HTTP port given is out of range.\0A\00"
@.str.19 = [41 x i8] c"No Content-Length found in HTTP Header.\0A\00"
@.str.20 = [52 x i8] c"Didn't receive an HTTP/1.1 200 OK Header for HTTP.\0A\00"
@.str.21 = [30 x i8] c"URL is not a valid HTTP URL.\0A\00"
@.str.22 = [22 x i8] c"SSDP Receive failed.\0A\00"
@.str.23 = [49 x i8] c"SSDP Received more data than can fit in buffer.\0A\00"
@.str.24 = [52 x i8] c"Didn't receive an HTTP/1.1 200 OK Header for SSDP.\0A\00"
@.str.25 = [39 x i8] c"No location tag found in SSDP header.\0A\00"
@.str.26 = [35 x i8] c"No location found in SSDP header.\0A\00"
@.str.27 = [42 x i8] c"Bad Description XML could not be parsed.\0A\00"
@.str.28 = [23 x i8] c"Get Public IP Failed.\0A\00"
@.str.29 = [38 x i8] c"Bad XML Response from Get Public IP.\0A\00"
@.str.30 = [34 x i8] c"URL Over Maximum Allowed Length.\0A\00"
@.str.31 = [13 x i8] c"Some Error.\0A\00"
define void @LNat_Print_Internal_Error(i32 %0) {
switch i32 %0, label %32 [
i32 0, label %33
i32 -499, label %2
i32 -498, label %3
i32 -999, label %4
i32 -998, label %5
i32 -997, label %6
i32 -996, label %7
i32 -995, label %8
i32 -994, label %9
i32 -993, label %10
i32 -992, label %11
i32 -991, label %12
i32 -990, label %13
i32 -989, label %14
i32 -988, label %15
i32 -987, label %16
i32 -899, label %17
i32 -898, label %18
i32 -897, label %19
i32 -896, label %20
i32 -895, label %21
i32 -894, label %22
i32 -799, label %23
i32 -798, label %24
i32 -797, label %25
i32 -796, label %26
i32 -795, label %27
i32 -699, label %28
i32 -697, label %29
i32 -696, label %30
i32 -695, label %31
]
2: ; preds = %1
br label %33
3: ; preds = %1
br label %33
4: ; preds = %1
br label %33
5: ; preds = %1
br label %33
6: ; preds = %1
br label %33
7: ; preds = %1
br label %33
8: ; preds = %1
br label %33
9: ; preds = %1
br label %33
10: ; preds = %1
br label %33
11: ; preds = %1
br label %33
12: ; preds = %1
br label %33
13: ; preds = %1
br label %33
14: ; preds = %1
br label %33
15: ; preds = %1
br label %33
16: ; preds = %1
br label %33
17: ; preds = %1
br label %33
18: ; preds = %1
br label %33
19: ; preds = %1
br label %33
20: ; preds = %1
br label %33
21: ; preds = %1
br label %33
22: ; preds = %1
br label %33
23: ; preds = %1
br label %33
24: ; preds = %1
br label %33
25: ; preds = %1
br label %33
26: ; preds = %1
br label %33
27: ; preds = %1
br label %33
28: ; preds = %1
br label %33
29: ; preds = %1
br label %33
30: ; preds = %1
br label %33
31: ; preds = %1
br label %33
32: ; preds = %1
br label %33
33: ; preds = %1, %32, %31, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8, %7, %6, %5, %4, %3, %2
%34 = phi i8* [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.31, i64 0, i64 0), %32 ], [ getelementptr inbounds ([34 x i8], [34 x i8]* @.str.30, i64 0, i64 0), %31 ], [ getelementptr inbounds ([38 x i8], [38 x i8]* @.str.29, i64 0, i64 0), %30 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.28, i64 0, i64 0), %29 ], [ getelementptr inbounds ([42 x i8], [42 x i8]* @.str.27, i64 0, i64 0), %28 ], [ getelementptr inbounds ([35 x i8], [35 x i8]* @.str.26, i64 0, i64 0), %27 ], [ getelementptr inbounds ([39 x i8], [39 x i8]* @.str.25, i64 0, i64 0), %26 ], [ getelementptr inbounds ([52 x i8], [52 x i8]* @.str.24, i64 0, i64 0), %25 ], [ getelementptr inbounds ([49 x i8], [49 x i8]* @.str.23, i64 0, i64 0), %24 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.22, i64 0, i64 0), %23 ], [ getelementptr inbounds ([30 x i8], [30 x i8]* @.str.21, i64 0, i64 0), %22 ], [ getelementptr inbounds ([52 x i8], [52 x i8]* @.str.20, i64 0, i64 0), %21 ], [ getelementptr inbounds ([41 x i8], [41 x i8]* @.str.19, i64 0, i64 0), %20 ], [ getelementptr inbounds ([34 x i8], [34 x i8]* @.str.18, i64 0, i64 0), %19 ], [ getelementptr inbounds ([49 x i8], [49 x i8]* @.str.17, i64 0, i64 0), %18 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.16, i64 0, i64 0), %17 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.15, i64 0, i64 0), %16 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.14, i64 0, i64 0), %15 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.13, i64 0, i64 0), %14 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.12, i64 0, i64 0), %13 ], [ getelementptr inbounds ([17 x i8], [17 x i8]* @.str.11, i64 0, i64 0), %12 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.10, i64 0, i64 0), %11 ], [ getelementptr inbounds ([32 x i8], [32 x i8]* @.str.9, i64 0, i64 0), %10 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @.str.8, i64 0, i64 0), %9 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.7, i64 0, i64 0), %8 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.6, i64 0, i64 0), %7 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0), %6 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.4, i64 0, i64 0), %5 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.3, i64 0, i64 0), %4 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.2, i64 0, i64 0), %3 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.1, i64 0, i64 0), %2 ], [ getelementptr inbounds ([19 x i8], [19 x i8]* @.str, i64 0, i64 0), %1 ]
%35 = load i32, i32* @stderr
%36 = tail call i32 @fprintf(i32 %35, i8* %34)
ret void
}