Function at 0x450550
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c0410
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x218
mov eax, dword [0x4f2214]
xor eax, dword [ebp + 4]
push ebx
push esi
mov dword [ebp - 0x10], eax
push edi
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov edi, dword [ebp + 8]
xor ebx, ebx
push 0xffffffffffffffff
push ebx
add eax, 0x64
push eax
lea ecx, [edi + 4]
mov dword [edi], ebx
call fcn.00402bf0
mov eax, 0x4c37b2
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4505a0
sub eax, ecx
push eax
push 0x4c37b2
lea ecx, [edi + 0x20]
call fcn.00402c7f
mov eax, dword [edi + 0x5c]
mov ecx, dword [eax + 4]
lea esi, [edi + 0x58]
push ecx
mov ecx, esi
call fcn.0040ac39
mov eax, dword [esi + 4]
mov dword [eax + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], ebx
mov dword [eax], eax
mov eax, dword [esi + 4]
push 0xffffffffffffffff
push ebx
lea ecx, [edi + 0x3c]
mov dword [eax + 8], eax
call fcn.00402b63
mov eax, 0xf
mov byte [ebp - 0x15], 0
mov byte [ebp - 0x1d], 0
mov byte [ebp - 0x14], 0
mov byte [ebp - 0x16], 0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x64], ebx
mov byte [ebp - 0x74], 0
mov dword [ebp - 4], ebx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], ebx
mov byte [ebp - 0x3c], 0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], ebx
mov byte [ebp - 0x58], 0
mov ebx, dword [ebp + 8]
mov byte [ebp - 4], 2
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi + 0x5c]
test eax, eax
jbe 0x450698
mov eax, dword [esi + 0x60]
lea ecx, [esi + 0x48]
mov edi, 0x10
cmp eax, edi
jb 0x450642
mov eax, dword [ecx + 4]
jmp 0x450645
lea eax, [ecx + 4]
mov dl, byte [eax]
cmp dword [ecx + 0x18], edi
mov byte [ebp - 0x21], dl
jb 0x450654
mov eax, dword [ecx + 4]
jmp 0x450657
lea eax, [ecx + 4]
lea edx, [eax + 1]
cmp dword [ecx + 0x18], edi
jb 0x450664
mov esi, dword [ecx + 4]
jmp 0x450667
lea esi, [ecx + 4]
cmp dword [ecx + 0x18], edi
jb 0x450671
mov edi, dword [ecx + 4]
jmp 0x450674
lea edi, [ecx + 4]
test esi, esi
jne 0x45067c
xor eax, eax
jmp 0x450680
mov eax, esi
sub eax, edi
test edx, edx
jne 0x45068d
push edx
push eax
call fcn.00402b63
jmp 0x4506bd
sub edx, esi
push edx
push eax
call fcn.00402b63
jmp 0x4506bd
mov eax, dword [esi + 0x40]
test eax, eax
je 0x451618
push eax
push 1
lea eax, [ebp - 0x21]
push 1
push eax
call fcn.004a8556
add esp, 0x10
cmp eax, 1
jne 0x451615
mov cl, byte [ebp - 0x21]
cmp cl, 0xa
jne 0x4506cb
mov eax, dword [ebp - 0x1c]
inc dword [eax + 0x3c]
mov eax, dword [ebx]
cmp eax, 5
jne 0x45078a
mov ecx, dword [ebp - 0x21]
push ecx
lea edi, [ebx + 0x3c]
push 1
mov ecx, edi
call fcn.0041f310
cmp byte [ebp - 0x21], 0x3e
mov edx, dword [edi + 0x14]
jne 0x450624
cmp edx, 3
jl 0x450624
mov esi, dword [edi + 0x18]
cmp esi, 0x10
lea eax, [edi + 4]
jb 0x45070b
mov ecx, dword [eax]
jmp 0x45070d
mov ecx, eax
cmp byte [edx + ecx - 2], 0x2d
jne 0x450624
cmp esi, 0x10
jb 0x45071f
mov eax, dword [eax]
cmp byte [edx + eax - 3], 0x2d
jne 0x450624
add edx, 0xfffffffd
push edx
push 0
lea ecx, [ebp - 0x160]
push ecx
mov ecx, edi
call fcn.00437100
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
mov byte [ebp - 4], 3
call fcn.00402bf0
cmp dword [ebp - 0x148], 0x10
mov byte [ebp - 4], 2
jb 0x45076a
mov edx, dword [ebp - 0x15c]
push edx
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x148], 0xf
mov dword [ebp - 0x14c], 0
mov byte [ebp - 0x15c], 0
jmp 0x451047
cmp eax, 4
jne 0x450851
mov eax, dword [ebx + 0x50]
test eax, eax
lea esi, [ebx + 0x20]
jne 0x4507ad
movsx edx, cl
push edx
call fcn.004aa127
add esp, 4
test eax, eax
je 0x4507b0
lea esi, [ebx + 0x3c]
mov eax, dword [ebp - 0x21]
push eax
push 1
mov ecx, esi
call fcn.0041f310
cmp byte [ebp - 0x21], 0x3e
mov eax, dword [esi + 0x14]
jne 0x450624
cmp eax, 2
jl 0x450624
mov ecx, dword [esi + 0x18]
mov edi, 0x10
cmp ecx, edi
jb 0x4507e4
mov ecx, dword [esi + 4]
jmp 0x4507e7
lea ecx, [esi + 4]
cmp byte [ecx + eax - 2], 0x3f
jne 0x450624
add eax, 0xfffffffe
push eax
push 0
lea eax, [ebp - 0x17c]
push eax
mov ecx, esi
call fcn.00437100
push 0xffffffffffffffff
push 0
push eax
mov ecx, esi
mov byte [ebp - 4], 4
call fcn.00402bf0
cmp dword [ebp - 0x164], edi
mov byte [ebp - 4], 2
jb 0x450831
mov ecx, dword [ebp - 0x178]
push ecx
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x164], 0xf
mov dword [ebp - 0x168], 0
mov byte [ebp - 0x178], 0
jmp 0x451047
cmp cl, 0x22
jne 0x450866
mov al, byte [ebp - 0x1d]
test al, al
sete cl
mov byte [ebp - 0x1d], cl
jmp 0x450624
mov dl, byte [ebp - 0x1d]
test dl, dl
jne 0x4509ac
cmp cl, 0x3c
jne 0x450892
cmp eax, 3
je 0x450bb5
test eax, eax
jne 0x451200
mov dword [ebx], 1
jmp 0x450624
cmp cl, 0x3e
je 0x450c19
cmp cl, 0x2f
jne 0x4508df
cmp eax, 1
jne 0x450920
mov eax, 0x4c37b2
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4508b0
sub eax, edx
mov edx, dword [ebx + 0x34]
push eax
lea ecx, [ebx + 0x20]
push 0x4c37b2
push edx
push 0
call fcn.00419840
test eax, eax
jne 0x4508dc
mov dword [ebx], 2
jmp 0x450624
mov cl, byte [ebp - 0x21]
cmp cl, 0x3f
jne 0x450920
cmp dword [ebx], 1
jne 0x450920
mov eax, 0x4c37b2
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4508f1
sub eax, edx
push eax
mov eax, dword [ebx + 0x34]
lea ecx, [ebx + 0x20]
push 0x4c37b2
push eax
push 0
call fcn.00419840
test eax, eax
jne 0x45091d
mov dword [ebx], 4
jmp 0x450624
mov cl, byte [ebp - 0x21]
movzx ecx, cl
push ecx
call fcn.004aa127
add esp, 4
test eax, eax
je 0x4509a0
mov eax, 0x4c37b2
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450938
sub eax, edx
mov edx, dword [ebx + 0x34]
push eax
lea ecx, [ebx + 0x20]
push 0x4c37b2
push edx
push 0
call fcn.00419840
test eax, eax
je 0x45095d
mov byte [ebp - 0x15], 1
cmp dword [ebx], 1
jne 0x450624
mov eax, 0x4c8874
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450970
sub eax, edx
push eax
mov eax, dword [ebx + 0x34]
lea ecx, [ebx + 0x20]
push 0x4c8874
push eax
push 0
call fcn.00419840
test eax, eax
jne 0x450624
mov dword [ebx], 5
jmp 0x450624
mov cl, byte [ebp - 0x21]
cmp cl, 0x20
jbe 0x451569
mov eax, dword [ebx]
test eax, eax
jne 0x4509f5
mov dword [ebx], 3
mov al, byte [ebp - 0x15]
test al, al
je 0x4509e2
mov eax, 0x4c4364
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4509c7
sub eax, edx
push eax
push 0x4c4364
lea ecx, [ebx + 0x20]
call fcn.0040652b
mov byte [ebp - 0x15], 0
mov eax, dword [ebp - 0x21]
push eax
push 1
lea ecx, [ebx + 0x20]
call fcn.0041f310
jmp 0x450624
cmp eax, 1
jne 0x4509b8
mov al, byte [ebp - 0x15]
test al, al
je 0x450b58
mov al, byte [ebp - 0x14]
test al, al
je 0x450b4c
mov al, byte [ebp - 0x16]
test al, al
jne 0x450a21
cmp cl, 0x3d
jne 0x450a2c
jmp 0x450b54
mov eax, dword [ebp - 0x2c]
test eax, eax
jbe 0x450b54
lea ecx, [ebp - 0x78]
push ecx
lea edx, [ebp - 0x1b4]
push edx
call fcn.0044cf90
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x15
call fcn.00402bf0
mov eax, dword [ebp - 0x19c]
mov edi, 0x10
cmp eax, edi
mov byte [ebp - 4], 2
jb 0x450a72
mov eax, dword [ebp - 0x1b0]
push eax
call fcn.004a773c
add esp, 4
lea ecx, [ebp - 0x40]
push ecx
lea edx, [ebp - 0x1ec]
mov esi, 0xf
push edx
mov dword [ebp - 0x19c], esi
mov dword [ebp - 0x1a0], 0
mov byte [ebp - 0x1b0], 0
call fcn.0044cf90
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x16
call fcn.00402bf0
cmp dword [ebp - 0x1d4], edi
mov byte [ebp - 4], 2
jb 0x450acd
mov eax, dword [ebp - 0x1e8]
push eax
call fcn.004a773c
add esp, 4
lea ecx, [ebp - 0x40]
push ecx
mov ecx, dword [ebp - 0x1c]
lea edx, [ebp - 0x78]
push edx
push ebx
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x1d8], 0
mov byte [ebp - 0x1e8], 0
call fcn.0044f2a0
mov eax, 0x4c37b2
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450b00
sub eax, edx
push eax
push 0x4c37b2
lea ecx, [ebp - 0x78]
call fcn.00402c7f
mov eax, 0x4c37b2
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450b20
sub eax, edx
push eax
push 0x4c37b2
lea ecx, [ebp - 0x40]
call fcn.00402c7f
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00402bf0
mov cl, byte [ebp - 0x21]
jmp 0x450b50
mov byte [ebp - 0x14], 1
mov byte [ebp - 0x16], 0
mov byte [ebp - 0x15], 0
mov al, byte [ebp - 0x14]
test al, al
jne 0x450b7a
lea ecx, [ebx + 0x20]
test ecx, ecx
je 0x450624
mov edx, dword [ebp - 0x21]
push edx
push 1
call fcn.0041f310
jmp 0x450624
cmp cl, 0x3d
jne 0x450b88
mov byte [ebp - 0x16], 1
jmp 0x450624
mov al, byte [ebp - 0x16]
test al, al
jne 0x450ba2
mov edx, dword [ebp - 0x21]
push edx
lea ecx, [ebp - 0x78]
push 1
call fcn.0041f310
jmp 0x450624
mov edx, dword [ebp - 0x21]
push edx
lea ecx, [ebp - 0x40]
push 1
call fcn.0041f310
jmp 0x450624
mov esi, dword [ebp - 0x1c]
add esi, 0x48
push esi
lea edx, [ebp - 0x144]
push 0x3c
push edx
call fcn.00448570
add esp, 0xc
push 0xffffffffffffffff
push 0
push eax
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.00402bf0
cmp dword [ebp - 0x12c], 0x10
mov byte [ebp - 4], 2
jb 0x450bf9
mov eax, dword [ebp - 0x140]
push eax
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x12c], 0xf
mov dword [ebp - 0x130], 0
mov byte [ebp - 0x140], 0
jmp 0x451047
mov eax, dword [ebx]
cmp eax, 1
jne 0x450f2c
mov eax, 0x4c7420
xor bl, bl
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450c30
mov ecx, dword [ebp - 0x64]
sub eax, edx
push eax
push 0x4c7420
push ecx
push 0
lea ecx, [ebp - 0x78]
call fcn.00419840
test eax, eax
je 0x450dfe
mov eax, dword [ebp - 0x64]
test eax, eax
jbe 0x450cc0
push 0xffffffffffffffff
push 0
lea edx, [ebp - 0x78]
push edx
lea ecx, [ebp - 0x5c]
call fcn.00402bf0
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x5c]
push ecx
mov ecx, dword [ebp - 0x1c]
push edi
call fcn.0044f2a0
mov eax, 0x4c37b2
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450c88
sub eax, edx
push eax
push 0x4c37b2
lea ecx, [ebp - 0x78]
call fcn.00402c7f
mov eax, 0x4c37b2
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450ca7
sub eax, edx
push eax
push 0x4c37b2
lea ecx, [ebp - 0x40]
call fcn.00402c7f
jmp 0x450cc3
mov edi, dword [ebp + 8]
mov eax, dword [ebp - 0x48]
test eax, eax
jbe 0x450da2
lea edx, [ebp - 0x5c]
push edx
lea ecx, [edi + 0x58]
call fcn.00450250
push 0xffffffffffffffff
push 0
mov esi, 0xf
push eax
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0xbc], esi
mov dword [ebp - 0xc0], 0
mov byte [ebp - 0xd0], 0
call fcn.00402bf0
mov eax, dword [ebp - 0xc0]
test eax, eax
mov byte [ebp - 4], 7
jle 0x450d65
cmp dword [ebp - 0xbc], 0x10
mov ecx, dword [ebp - 0xd0]
jae 0x450d29
lea ecx, [ebp - 0xd0]
cmp byte [eax + ecx - 1], 0x2f
jne 0x450d65
dec eax
push eax
push 0
lea eax, [ebp - 0x208]
push eax
lea ecx, [ebp - 0xd4]
call fcn.00437100
push eax
lea ecx, [ebp - 0x5c]
push ecx
mov ecx, dword [ebp - 0x1c]
push edi
mov byte [ebp - 4], 8
call fcn.0044f2a0
lea ecx, [ebp - 0x208]
call fcn.00402982
mov bl, 1
cmp dword [ebp - 0xbc], 0x10
mov byte [ebp - 4], 2
jb 0x450d81
mov edx, dword [ebp - 0xd0]
push edx
call fcn.004a773c
add esp, 4
test bl, bl
mov dword [ebp - 0xbc], esi
mov dword [ebp - 0xc0], 0
mov byte [ebp - 0xd0], 0
je 0x450eed
jmp 0x450e01
mov eax, dword [edi + 0x34]
test eax, eax
jle 0x450eed
mov ecx, dword [edi + 0x38]
cmp ecx, 0x10
lea esi, [edi + 0x20]
jb 0x450dbd
mov ecx, dword [esi + 4]
jmp 0x450dc0
lea ecx, [esi + 4]
cmp byte [ecx + eax - 1], 0x2f
jne 0x450eed
dec eax
push eax
push 0
lea eax, [ebp - 0x224]
push eax
mov ecx, esi
call fcn.00437100
push 0xffffffffffffffff
push 0
push eax
mov ecx, esi
mov byte [ebp - 4], 9
call fcn.00402bf0
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 2
call fcn.00402982
jmp 0x450e01
mov edi, dword [ebp + 8]
lea eax, [edi + 0x20]
push eax
lea ecx, [ebp - 0x128]
push 0x4c8870
push ecx
call fcn.004065da
push 0x4c886c
push eax
lea edx, [ebp - 0x198]
push edx
mov byte [ebp - 4], 0xa
call fcn.0040662a
mov esi, dword [ebp - 0x1c]
add esi, 0x48
push esi
push eax
lea eax, [ebp - 0x1d0]
push eax
mov byte [ebp - 4], 0xb
call fcn.0040ae8b
add esp, 0x24
push 0xffffffffffffffff
xor ebx, ebx
push ebx
push eax
mov ecx, esi
mov byte [ebp - 4], 0xc
call fcn.00402bf0
mov eax, dword [ebp - 0x1b8]
mov esi, 0x10
cmp eax, esi
jb 0x450e76
mov ecx, dword [ebp - 0x1cc]
push ecx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x180], esi
mov dword [ebp - 0x1b8], 0xf
mov dword [ebp - 0x1bc], ebx
mov byte [ebp - 0x1cc], 0
jb 0x450ea4
mov edx, dword [ebp - 0x194]
push edx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x110], esi
mov dword [ebp - 0x180], 0xf
mov dword [ebp - 0x184], ebx
mov byte [ebp - 0x194], 0
mov byte [ebp - 4], 2
jb 0x450ed6
mov eax, dword [ebp - 0x124]
push eax
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x110], 0xf
mov dword [ebp - 0x114], ebx
mov byte [ebp - 0x124], 0
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi + 0x78]
test eax, eax
je 0x450f17
mov eax, 0x4c7420
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x450f00
sub eax, edx
push eax
push 0x4c7420
lea ecx, [esi + 0x64]
call fcn.0040652b
push 0xffffffffffffffff
push 0
lea eax, [edi + 0x20]
push eax
lea ecx, [esi + 0x64]
call fcn.00406496
jmp 0x451044
cmp eax, 2
jne 0x4514d8
mov edi, dword [ebp - 0x1c]
push 1
push 0xffffffffffffffff
lea ecx, [ebp - 0x14]
push ecx
lea ebx, [edi + 0x64]
mov ecx, ebx
mov byte [ebp - 0x14], 0x2f
call fcn.00433d40
mov esi, eax
cmp esi, 0xffffffff
jne 0x450f60
mov eax, dword [edi + 0x78]
test eax, eax
je 0x45129f
push 0xffffffffffffffff
lea edx, [esi + 1]
push edx
lea eax, [ebp - 0x94]
push eax
mov ecx, ebx
call fcn.00437100
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x38]
mov eax, dword [edi + 0x34]
add edi, 0x20
cmp ecx, 0x10
mov byte [ebp - 4], 0xe
jb 0x450f8e
mov ecx, dword [edi + 4]
jmp 0x450f91
lea ecx, [edi + 4]
push eax
push ecx
mov ecx, dword [ebp - 0x80]
push ecx
push 0
lea ecx, [ebp - 0x94]
call fcn.00419840
test eax, eax
jne 0x45131f
cmp esi, 0xffffffff
jne 0x450fdc
push ecx
mov edx, esp
mov dword [ebp - 0x98], esp
push edx
mov ecx, ebx
call fcn.0041bf90
push ecx
mov eax, esp
mov dword [ebp - 0x98], esp
push eax
mov ecx, ebx
call fcn.0041bf70
lea ecx, [ebp - 0x9c]
push ecx
jmp 0x45100f
cmp dword [ebx + 0x18], 0x10
jb 0x450fe7
mov edi, dword [ebx + 4]
jmp 0x450fea
lea edi, [ebx + 4]
push ecx
mov edx, esp
mov dword [ebp - 0x9c], esp
push edx
mov ecx, ebx
call fcn.0041bf90
push ecx
mov eax, esp
add edi, esi
mov dword [eax], edi
lea eax, [ebp - 0x98]
mov dword [ebp - 0x9c], esp
push eax
mov ecx, ebx
call fcn.00447f60
cmp dword [ebp - 0x7c], 0x10
mov byte [ebp - 4], 2
jb 0x45102f
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x7c], 0xf
mov dword [ebp - 0x80], 0
mov byte [ebp - 0x90], 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebp - 0x64]
test eax, eax
jbe 0x45111b
lea edx, [ebp - 0x78]
push edx
lea eax, [ebp - 0x10c]
push eax
call fcn.0044cf90
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x18
call fcn.00402bf0
mov eax, dword [ebp - 0xf4]
mov esi, 0x10
cmp eax, esi
mov byte [ebp - 4], 2
jb 0x451098
mov ecx, dword [ebp - 0x108]
push ecx
call fcn.004a773c
add esp, 4
lea edx, [ebp - 0x40]
push edx
lea eax, [ebp - 0xf0]
mov edi, 0xf
push eax
mov dword [ebp - 0xf4], edi
mov dword [ebp - 0xf8], 0
mov byte [ebp - 0x108], 0
call fcn.0044cf90
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x19
call fcn.00402bf0
cmp dword [ebp - 0xd8], esi
mov byte [ebp - 4], 2
jb 0x4510f3
mov ecx, dword [ebp - 0xec]
push ecx
call fcn.004a773c
add esp, 4
mov ecx, dword [ebp - 0x1c]
lea edx, [ebp - 0x40]
push edx
lea eax, [ebp - 0x78]
push eax
push ebx
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0xdc], 0
mov byte [ebp - 0xec], 0
call fcn.0044f2a0
lea esi, [ebx + 0x20]
lea ecx, [ebp - 0xb8]
push esi
push ecx
call fcn.0044cf90
add esp, 8
push 0xffffffffffffffff
push 0
push eax
mov ecx, esi
mov byte [ebp - 4], 0x1a
call fcn.00402bf0
mov eax, dword [ebp - 0xa0]
mov esi, 0x10
cmp eax, esi
mov byte [ebp - 4], 2
jb 0x451160
mov edx, dword [ebp - 0xb4]
push edx
call fcn.004a773c
add esp, 4
cmp dword [ebx], 5
mov edi, 0xf
mov dword [ebp - 0xa0], edi
mov dword [ebp - 0xa4], 0
mov byte [ebp - 0xb4], 0
jne 0x451482
mov eax, dword [ebp - 0x1c]
mov cl, byte [eax + 0x45]
test cl, cl
jne 0x451482
cmp dword [ebp - 0x44], esi
jb 0x4511a4
mov ecx, dword [ebp - 0x58]
push ecx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x28], esi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x48], 0
mov byte [ebp - 0x58], 0
jb 0x4511c3
mov edx, dword [ebp - 0x3c]
push edx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x60], esi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], 0
mov byte [ebp - 0x3c], 0
mov dword [ebp - 4], 0xffffffff
jb 0x4511e9
mov eax, dword [ebp - 0x74]
push eax
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x60], 0xf
mov dword [ebp - 0x64], 0
mov byte [ebp - 0x74], 0
jmp 0x45057f
mov edi, 0xf
mov eax, str.Unexpected__
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], 0
mov byte [ebp - 0x90], 0
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x451220
sub eax, edx
push eax
push str.Unexpected__
lea ecx, [ebp - 0x94]
call fcn.00402c7f
lea ecx, [ebp - 0x94]
push ecx
mov ecx, dword [ebp - 0x1c]
mov byte [ebp - 4], 6
call fcn.0044a620
mov eax, dword [ebp - 0x7c]
mov esi, 0x10
cmp eax, esi
jb 0x451268
mov edx, dword [ebp - 0x90]
push edx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x44], esi
jb 0x451279
mov eax, dword [ebp - 0x58]
push eax
call fcn.004a773c
add esp, 4
mov eax, dword [ebp - 0x28]
xor ebx, ebx
cmp eax, esi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x48], ebx
mov byte [ebp - 0x58], bl
jb 0x451297
mov ecx, dword [ebp - 0x3c]
push ecx
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x2c], ebx
jmp 0x4516c5
push str.Unexpected_End
lea ecx, [ebp - 0xb8]
call fcn.004030c7
lea eax, [ebp - 0xb8]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xd
call fcn.0044a620
mov eax, dword [ebp - 0xa0]
mov esi, 0x10
cmp eax, esi
jb 0x4512df
mov ecx, dword [ebp - 0xb4]
push ecx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x44], esi
jb 0x4512f0
mov edx, dword [ebp - 0x58]
push edx
call fcn.004a773c
add esp, 4
mov eax, dword [ebp - 0x28]
xor edi, edi
cmp eax, esi
mov ebx, 0xf
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], edi
mov byte [ebp - 0x58], 0
jb 0x451314
mov eax, dword [ebp - 0x3c]
push eax
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], edi
jmp 0x451553
push edi
lea edx, [ebp - 0x128]
push str.End_
push edx
call fcn.004065da
push str._Doesnt_Match_Start_
push eax
lea eax, [ebp - 0x10c]
push eax
mov byte [ebp - 4], 0xf
call fcn.0040662a
lea ecx, [ebp - 0x94]
push ecx
push eax
lea edx, [ebp - 0xf0]
push edx
mov byte [ebp - 4], 0x10
call fcn.0040ae8b
push 0x4c649c
push eax
lea eax, [ebp - 0xb8]
push eax
mov byte [ebp - 4], 0x11
call fcn.0040662a
add esp, 0x30
mov ecx, dword [ebp - 0x1c]
push eax
mov byte [ebp - 4], 0x12
call fcn.0044a620
mov eax, dword [ebp - 0xa0]
mov esi, 0x10
cmp eax, esi
jb 0x4513a3
mov ecx, dword [ebp - 0xb4]
push ecx
call fcn.004a773c
add esp, 4
mov eax, dword [ebp - 0xd8]
xor edi, edi
cmp eax, esi
mov ebx, 0xf
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0xa4], edi
mov byte [ebp - 0xb4], 0
jb 0x4513d6
mov edx, dword [ebp - 0xec]
push edx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0xf4], esi
mov dword [ebp - 0xd8], ebx
mov dword [ebp - 0xdc], edi
mov byte [ebp - 0xec], 0
jb 0x451400
mov eax, dword [ebp - 0x108]
push eax
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x110], esi
mov dword [ebp - 0xf4], ebx
mov dword [ebp - 0xf8], edi
mov byte [ebp - 0x108], 0
jb 0x45142a
mov ecx, dword [ebp - 0x124]
push ecx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x7c], esi
jb 0x45143e
mov edx, dword [ebp - 0x90]
push edx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x44], esi
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x80], edi
mov byte [ebp - 0x90], 0
jb 0x45145c
mov eax, dword [ebp - 0x58]
push eax
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x28], esi
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], edi
mov byte [ebp - 0x58], 0
jb 0x451477
mov ecx, dword [ebp - 0x3c]
push ecx
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], edi
jmp 0x4516c8
cmp dword [ebp - 0x44], esi
jb 0x451493
mov eax, dword [ebp - 0x58]
push eax
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x28], esi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x48], 0
mov byte [ebp - 0x58], 0
jb 0x4514b2
mov ecx, dword [ebp - 0x3c]
push ecx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x60], esi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], 0
mov byte [ebp - 0x3c], 0
jb 0x4514d1
mov edx, dword [ebp - 0x74]
push edx
call fcn.004a773c
add esp, 4
mov al, 1
jmp 0x4516df
push 0x4c881c
lea ecx, [ebp - 0xb8]
call fcn.004030c7
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0xb8]
push eax
mov byte [ebp - 4], 0x13
call fcn.0044a620
mov eax, dword [ebp - 0xa0]
mov esi, 0x10
cmp eax, esi
jb 0x451519
mov ecx, dword [ebp - 0xb4]
push ecx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x44], esi
jb 0x45152a
mov edx, dword [ebp - 0x58]
push edx
call fcn.004a773c
add esp, 4
mov eax, dword [ebp - 0x28]
xor ebx, ebx
cmp eax, esi
mov edi, 0xf
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x48], ebx
mov byte [ebp - 0x58], bl
jb 0x45154d
mov eax, dword [ebp - 0x3c]
push eax
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x60], esi
mov byte [ebp - 0x3c], 0
jb 0x4516dd
mov ecx, dword [ebp - 0x74]
push ecx
jmp 0x4516d5
mov ebx, 0xf
xor edi, edi
mov eax, str.Illegal_Character
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x80], edi
mov byte [ebp - 0x90], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x451585
sub eax, edx
push eax
push str.Illegal_Character
lea ecx, [ebp - 0x94]
call fcn.00402c7f
mov ecx, dword [ebp - 0x1c]
lea edx, [ebp - 0x94]
push edx
mov byte [ebp - 4], 0x14
call fcn.0044a620
mov eax, dword [ebp - 0x7c]
mov esi, 0x10
cmp eax, esi
jb 0x4515cd
mov eax, dword [ebp - 0x90]
push eax
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x44], esi
jb 0x4515de
mov ecx, dword [ebp - 0x58]
push ecx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x28], esi
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], edi
mov byte [ebp - 0x58], 0
jb 0x4515f9
mov edx, dword [ebp - 0x3c]
push edx
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x60], esi
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], edi
mov byte [ebp - 0x3c], 0
jb 0x4516dd
mov eax, dword [ebp - 0x74]
push eax
jmp 0x4516d5
mov esi, dword [ebp - 0x1c]
cmp dword [ebx], 0
mov edi, 0xf
je 0x451689
mov eax, str.Unexpected_End_of_File
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], 0
mov byte [ebp - 0x90], 0
lea edx, [eax + 1]
jmp 0x451640
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x451640
sub eax, edx
push eax
push str.Unexpected_End_of_File
lea ecx, [ebp - 0x94]
call fcn.00402c7f
lea ecx, [ebp - 0x94]
push ecx
mov ecx, esi
mov byte [ebp - 4], 0x17
call fcn.0044a620
mov eax, dword [ebp - 0x7c]
mov esi, 0x10
cmp eax, esi
jb 0x45168e
mov edx, dword [ebp - 0x90]
push edx
call fcn.004a773c
add esp, 4
jmp 0x45168e
mov esi, 0x10
cmp dword [ebp - 0x44], esi
jb 0x45169f
mov eax, dword [ebp - 0x58]
push eax
call fcn.004a773c
add esp, 4
cmp dword [ebp - 0x28], esi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x48], 0
mov byte [ebp - 0x58], 0
jb 0x4516be
mov ecx, dword [ebp - 0x3c]
push ecx
call fcn.004a773c
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], edi
cmp dword [ebp - 0x60], esi
mov byte [ebp - 0x3c], 0
jb 0x4516dd
mov edx, dword [ebp - 0x74]
push edx
call fcn.004a773c
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
xor ecx, dword [ebp + 4]
call fcn.004a8117
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4