Function at 0x4774d0
Capabilities:
Check for software breakpoints

Disassembly:
push edi
lea edi, [esp + 8]
and esp, 0xfffffff0
push dword [edi - 4]
push ebp
mov ebp, esp
push edi
push esi
mov esi, ecx
push ebx
sub esp, 0x1ac
mov eax, dword [edi + 4]
mov edx, dword [edi]
mov dword [ebp - 0x174], eax
mov eax, dword [ecx + 0x110]
mov dword [ebp - 0x178], edx
mov dword [ebp - 0x198], eax
cmp eax, 0x63
jg 0x4791e4
add eax, 1
mov edi, dword [ecx + 0x14]
mov dword [ecx + 0x110], eax
movzx eax, byte [ecx + 0xdd]
mov edx, edi
mov byte [ecx + 0xdd], 1
mov byte [ebp - 0x199], al
cmp edi, 0x7c
je 0x478dcb
cmp edi, 0x26
je 0x478dcb
mov dword [ebp - 0x180], 0
mov dword [ebp - 0x140], 0
mov byte [ebp - 0x168], 0
mov byte [ebp - 0x148], 0
mov ecx, edi
mov edi, esi
mov byte [ebp - 0x13c], 0
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
mov byte [ebp - 0x158], 0
cmp ecx, 0xe3
je 0x4780a0
cmp ecx, 0xb2
jg 0x477b10
cmp ecx, 0xa9
jg 0x478300
cmp ecx, 0x86
jg 0x4785a4
cmp ecx, 0x25
jle case.0x477f0b.238
lea eax, [ecx - 0x26]
cmp eax, 0x60
ja case.0x477f0b.238
jmp dword [eax*4 + 0x58fcd0]
cmp ecx, 0xb
je case.0x477f0b.239
lea esi, cs:[esi]
movd xmm0, dword [edi + 0xc]
mov ecx, dword [edi + 0x60]
lea esi, [ebp - 0x78]
punpckldq xmm0, xmm0
movq qword [ebp - 0x78], xmm0
mov eax, dword [ecx]
mov dword [esp + 4], esi
mov dword [esp], 0xe2
call dword [eax + 8]
sub esp, 8
mov ecx, dword [edi + 0x14]
lea esi, [esi]
cmp byte [ebp - 0x148], 0
jne 0x477630
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x18], 0
je 0x477630
cmp ecx, 0x3f
je 0x478720
nop
cmp ecx, 0x5b
jne 0x477718
movzx esi, byte [ebp - 0x13c]
lea ebx, [edi + 0xc]
jmp 0x47768e
lea eax, [ebp - 0x78]
mov dword [ebp - 0x64], 0
mov ecx, edi
mov dword [ebp - 0x60], 0x1010001
mov dword [ebp - 0x5c], 0x10101
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call fcn.004774d0
sub esp, 8
cmp dword [edi + 0x14], 0x5d
jne 0x478ee9
mov ecx, ebx
call fcn.00451070
cmp dword [edi + 0x14], 0x5b
jne 0x4776b8
cmp byte [edi + 0x18], 0
jne 0x4776b8
mov ecx, ebx
call fcn.00451070
cmp dword [edi + 0x14], 0x5d
jne 0x477648
mov ecx, ebx
mov esi, 1
call fcn.00451070
cmp dword [edi + 0x14], 0x5b
je 0x47768e
lea esi, cs:[esi]
mov eax, esi
mov byte [ebp - 0x13c], al
jmp 0x477718
sub ecx, 0xd9
mov eax, 1
shl eax, cl
test eax, 0xeff8
jne case.0x477f0b.241
test eax, 0x90006
jne case.0x477f0b.243
test al, 1
je case.0x477f0b.238
lea ecx, [edi + 0xc]
call fcn.00451070
mov ecx, dword [edi + 0x14]
jmp 0x477610
cmp byte [ebp - 0x168], 0
jne 0x478b06
cmp byte [ebp - 0x148], 0
jne 0x47776b
lea esi, cs:[esi]
cmp byte [ebp - 0x158], 0
je 0x477768
movzx eax, byte [ebp - 0x13c]
or al, byte [ebp - 0x148]
jne 0x477768
mov ecx, dword [edi + 0x60]
movq xmm5, qword [ebp - 0x170]
lea esi, [ebp - 0x78]
mov eax, dword [ecx]
movq qword [ebp - 0x78], xmm5
mov dword [esp + 4], esi
mov dword [esp], 0x165
call dword [eax + 8]
mov byte [ebp - 0x148], 0
mov byte [ebp - 0x13c], 0
sub esp, 8
lea esi, [esi]
mov ecx, dword [edi + 0x14]
cmp ecx, 0x7c
je 0x477779
cmp ecx, 0x26
jne 0x478790
mov eax, dword [edi + 0xc]
lea ebx, [edi + 0xc]
mov ecx, ebx
mov dword [ebp - 0x140], eax
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x180], eax
call fcn.00451070
mov byte [ebp - 0x168], 1
mov ecx, dword [edi + 0x14]
mov edx, ecx
jmp 0x477570
lea ebx, [edi + 0xc]
mov esi, dword [edi + 0x1c]
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x188], edx
mov ecx, ebx
mov edx, dword [edi + 0xc]
mov dword [ebp - 0x168], esi
mov esi, dword [edi + 0x20]
mov dword [ebp - 0x194], eax
sub eax, edx
mov dword [ebp - 0x140], edx
mov dword [ebp - 0x180], esi
mov esi, eax
call fcn.00451070
mov ecx, dword [edi + 0x14]
mov edx, dword [ebp - 0x188]
cmp ecx, 0xd2
je 0x47840a
movd xmm6, dword [ebp - 0x140]
movd xmm3, dword [ebp - 0x180]
movd xmm7, esi
punpckldq xmm6, xmm3
movq qword [ebp - 0x188], xmm6
movd xmm6, dword [ebp - 0x168]
punpckldq xmm7, xmm6
movq qword [ebp - 0x190], xmm7
cmp ecx, 0x2e
jne 0x478555
lea esi, [esi]
mov ecx, ebx
call fcn.00451070
mov eax, dword [edi + 0x14]
cmp eax, 0x81
je 0x47785f
sub eax, 0xa9
cmp eax, 0x51
ja 0x479010
mov ecx, ebx
call fcn.00451070
cmp dword [edi + 0x14], 0x2e
je 0x477840
mov ecx, dword [ebp - 0x178]
mov eax, dword [ecx]
mov eax, dword [eax + 0xa4]
cmp eax, 0x44db20
jne 0x478d04
movq xmm3, qword [ebp - 0x188]
movq xmm5, qword [ebp - 0x190]
lea esi, [ebp - 0x78]
movq qword [ebp - 0x78], xmm3
movq qword [ebp - 0x70], xmm5
mov byte [esp + 4], 0x29
mov dword [esp], esi
call fcn.0044d9a0
sub esp, 8
mov ebx, 1
mov ecx, dword [edi + 0x14]
cmp ecx, 0x3c
je 0x4783cb
cmp ecx, 0x98
je 0x4783cb
mov edx, dword [ebp - 0x174]
cmp byte [edx + 0x14], 0
je 0x477610
cmp ecx, 0x5b
je 0x477610
test bl, bl
jne 0x477610
mov eax, dword [edx + 4]
mov esi, dword [ebp - 0x168]
cmp dword [edx + 0xc], esi
jne 0x477610
mov dword [ebp - 0x188], ecx
test esi, esi
je 0x477930
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x180]
mov dword [esp], eax
call sub.msvcrt.dll_memcmp
mov ecx, dword [ebp - 0x188]
test eax, eax
jne 0x477610
mov esi, dword [ebp - 0x174]
movd xmm1, dword [ebp - 0x140]
movd xmm5, dword [ebp - 0x194]
mov ecx, dword [edi + 0x60]
mov eax, dword [esi]
mov edx, dword [esi + 8]
punpckldq xmm1, xmm5
movzx ebx, byte [esi + 0x10]
lea esi, [ebp - 0x78]
add edx, eax
movd xmm0, eax
movd xmm4, edx
mov byte [ebp - 0x68], bl
punpckldq xmm0, xmm4
punpcklqdq xmm1, xmm0
movups xmmword [ebp - 0x78], xmm1
mov eax, dword [ecx]
mov dword [esp + 4], esi
mov dword [esp], 0x14
call dword [eax + 8]
mov ecx, dword [edi + 0x14]
sub esp, 8
jmp 0x477610
lea ecx, [edi + 0xc]
call fcn.00451070
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.00474070
mov ecx, dword [edi + 0x14]
sub esp, 4
jmp 0x477610
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.0042c790
mov ecx, dword [edi + 0x14]
sub esp, 4
jmp 0x477610
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.0042cd90
mov byte [ebp - 0x148], 1
mov ecx, dword [edi + 0x14]
sub esp, 4
jmp 0x477630
mov ecx, dword [edi + 0x60]
movq xmm7, qword [edi + 0xc]
lea esi, [ebp - 0x78]
lea ebx, [edi + 0xc]
mov eax, dword [ecx]
movq qword [ebp - 0x78], xmm7
mov dword [esp + 4], esi
mov dword [esp], 8
call dword [eax + 8]
mov ecx, ebx
sub esp, 8
call fcn.00451070
jmp 0x47779c
mov eax, dword [ebp - 0x174]
lea esi, [ebp - 0x78]
mov byte [ebp - 0x5a], 1
mov ecx, edi
mov dword [ebp - 0x60], 0x1010001
mov edx, dword [eax + 0x14]
movdqu xmm3, xmmword [eax]
mov eax, dword [eax + 0x10]
movups xmmword [ebp - 0x168], xmm3
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x164], edx
mov edx, 0x101
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x68], eax
mov word [ebp - 0x5c], dx
movups xmmword [ebp - 0x78], xmm3
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call fcn.00481860
mov ecx, dword [edi + 0x14]
sub esp, 8
jmp 0x477610
mov eax, dword [ebp - 0x174]
lea esi, [ebp - 0x78]
mov byte [ebp - 0x5a], 1
mov ecx, edi
mov dword [ebp - 0x60], 0x1010001
movdqu xmm3, xmmword [eax]
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
movups xmmword [ebp - 0x168], xmm3
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x168], eax
mov eax, 0x101
mov word [ebp - 0x5c], ax
mov dword [ebp - 0x164], edx
mov dword [ebp - 0x64], edx
movups xmmword [ebp - 0x78], xmm3
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call fcn.00477290
mov ecx, dword [edi + 0x14]
sub esp, 8
jmp 0x477610
lea ebx, [edi + 0xc]
mov ecx, ebx
call fcn.00451070
cmp dword [edi + 0x14], 0x83
jne 0x4791c6
mov ecx, ebx
call fcn.00451070
mov ecx, dword [edi + 0x14]
jmp 0x477610
cmp ecx, 0xd8
jg 0x477ef0
cmp ecx, 0xcd
jle 0x47818c
sub ecx, 0xce
cmp ecx, 0xa
ja case.0x477f0b.238
jmp dword [ecx*4 + 0x58fe54]
lea ebx, [edi + 0xc]
lea esi, [ebp - 0x78]
mov dword [esp], ebx
mov ecx, esi
call fcn.0044dcf0
mov ecx, ebx
sub esp, 4
call fcn.00451070
mov eax, dword [edi + 0x14]
mov ecx, ebx
mov dword [esp], esi
cmp eax, 0x2e
je 0x47808b
cmp eax, 0xd2
je 0x47808b
call fcn.0044dd70
mov ecx, dword [edi + 0x14]
sub esp, 4
jmp 0x477610
lea ebx, [edi + 0xc]
lea esi, [ebp - 0x78]
mov dword [esp], ebx
mov ecx, esi
call fcn.0044dcf0
mov ecx, ebx
sub esp, 4
call fcn.00451070
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x19], 0
je 0x477bb7
cmp dword [edi + 0x14], 0xd2
je 0x4783c1
mov dword [esp], esi
mov ecx, ebx
call fcn.0044dd70
mov eax, dword [ebp - 0x174]
mov ecx, edi
sub esp, 4
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call fcn.004774d0
mov ecx, dword [edi + 0x14]
sub esp, 8
jmp 0x477610
lea ebx, [edi + 0xc]
lea edx, [ebp - 0xc0]
mov dword [esp], ebx
mov ecx, edx
call fcn.0044dcf0
mov eax, dword [edi + 0xc]
movq xmm6, qword [edi + 0xc]
mov ecx, ebx
sub esp, 4
mov dword [ebp - 0x188], eax
movq qword [ebp - 0x180], xmm6
call fcn.00451070
mov eax, dword [edi + 0x14]
lea edx, [ebp - 0xc0]
cmp eax, 0xd6
jg 0x478e0d
cmp eax, 0xb7
jle 0x478e67
lea ecx, [eax - 0xb8]
mov esi, 1
shl esi, cl
and esi, 0x6a434009
jne 0x477c6b
cmp eax, 0xd2
jne 0x478e25
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x19], 0
jne 0x478df8
mov dword [esp], edx
mov ecx, ebx
call fcn.0044dd70
mov eax, dword [edi + 0x10]
mov ecx, ebx
mov esi, dword [edi + 0x20]
sub esp, 4
mov dword [ebp - 0x140], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x168], eax
mov eax, dword [edi + 0x1c]
mov dword [ebp - 0x190], eax
call fcn.00451070
mov edx, dword [edi + 0xe0]
test edx, edx
je 0x478d50
mov eax, dword [edx + 8]
test eax, eax
je 0x478d3a
mov ecx, dword [eax + 8]
mov dword [ebp - 0x180], ecx
cmp ecx, 0x91
je 0x478d3a
imul edx, dword [ebp - 0x180], 0x1c
mov ecx, dword [ebp - 0x168]
movd xmm4, esi
movd xmm0, dword [ebp - 0x168]
mov esi, dword [ebp - 0x140]
movd xmm6, dword [ebp - 0x190]
lea edx, [eax + edx + 0xc]
sub esi, ecx
punpckldq xmm0, xmm4
mov ecx, dword [ebp - 0x180]
movq qword [edx + 4], xmm0
movd xmm0, esi
mov esi, 0xd
add ecx, 1
punpckldq xmm0, xmm6
mov byte [edx], 0x2e
mov word [edx + 0x14], si
movq qword [edx + 0xc], xmm0
mov dword [eax + 8], ecx
mov ecx, dword [edi + 0x14]
cmp ecx, 0x5b
je 0x478d82
cmp ecx, 0xc2
jne 0x477610
lea eax, [edi + 0x80]
lea esi, [ebp - 0x78]
mov dword [ebp - 0x168], eax
mov ecx, esi
mov dword [esp], ebx
call fcn.0044dcf0
mov eax, dword [edi + 0x80]
mov dword [ebp - 0x30], 0x584df4
sub esp, 4
mov eax, dword [eax + 8]
cmp eax, 0x460280
jne 0x478f30
mov eax, dword [edi + 0x88]
sub eax, 1
or eax, 3
mov dword [ebp - 0x140], eax
add eax, 1
mov ecx, eax
sub ecx, dword [edi + 0x88]
lea edx, [ecx + 0x10]
mov ecx, dword [edi + 0x8c]
sub ecx, dword [edi + 0x88]
cmp ecx, edx
jb 0x4791f0
mov ecx, dword [ebp - 0x140]
add ecx, 0x11
mov dword [edi + 0x88], ecx
mov edx, dword [ebp - 0x168]
mov dword [eax + 4], 0
movd xmm0, eax
mov dword [eax + 8], 0
movd xmm5, dword [edi + 0x60]
mov dword [eax], edx
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x30]
punpckldq xmm0, xmm5
mov dword [edi + 0x60], eax
lea eax, [edi + 0xb0]
mov dword [ebp - 0x140], eax
movq qword [ebp - 0x2c], xmm0
movzx eax, byte [0x5ec120]
test al, al
je 0x478e90
mov eax, dword [edi + 0xb4]
test eax, eax
je 0x478e48
mov ecx, dword [eax + 8]
mov edx, eax
mov dword [ebp - 0x168], ecx
cmp ecx, 0xff
je 0x478e48
mov ecx, dword [ebp - 0x168]
shl ecx, 4
lea ecx, [eax + ecx + 0xc]
mov dword [ecx], 0x583dc0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0x55d020
mov ecx, dword [ebp - 0x168]
add ecx, 1
mov dword [eax + 8], ecx
mov eax, dword [edx + 8]
mov ecx, ebx
sub eax, 1
shl eax, 4
lea eax, [edx + eax + 0xc]
mov dword [ebp - 0x168], eax
call fcn.00451070
mov ecx, 0x101
lea eax, [ebp - 0xe0]
mov byte [ebp - 0xcc], 0
mov word [ebp - 0xc4], cx
mov ecx, edi
mov dword [ebp - 0xc8], 0x1010000
mov byte [ebp - 0xc2], 1
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x168]
mov dword [esp], eax
call fcn.004774d0
sub esp, 8
cmp dword [edi + 0x14], 0x3f
jne 0x478c1f
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x1e], 0
je 0x478c1f
mov eax, dword [ebp - 0x28]
mov ecx, ebx
mov dword [edi + 0x60], eax
mov dword [esp], esi
call fcn.0044dde0
sub esp, 4
jmp 0x478c43
cmp ecx, 0xec
jle 0x4776c2
sub ecx, 0xed
cmp ecx, 0xd
ja case.0x477f0b.238
jmp dword [ecx*4 + 0x58fe80]
lea ebx, [edi + 0xc]
lea esi, [ebp - 0x78]
mov dword [esp], ebx
mov ecx, esi
call fcn.0044dcf0
mov ecx, ebx
sub esp, 4
call fcn.00451070
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x19], 0
je 0x477f45
cmp dword [edi + 0x14], 0xd2
je 0x4783c1
mov dword [esp], esi
mov ecx, ebx
call fcn.0044dd70
sub esp, 4
cmp dword [edi + 0x14], 0xec
je 0x477aff
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x20e
mov dword [esp], 0x58fa54
call fcn.004258f0
lea esi, [esi]
lea ebx, [edi + 0xc]
mov ecx, ebx
call fcn.00451070
mov eax, dword [edi + 0x14]
sub eax, 0x81
cmp eax, 0x79
ja case.0x477f9b.130
jmp dword [eax*4 + 0x58feb8]
sub eax, 0xa9
cmp eax, 0x51
ja 0x477fdf
mov ecx, ebx
call fcn.00451070
mov ecx, dword [edi + 0x14]
cmp ecx, 0x2e
jne 0x47860d
mov ecx, ebx
call fcn.00451070
mov eax, dword [edi + 0x14]
cmp eax, 0x84
je case.0x477f9b.237
jg 0x477fa8
cmp eax, 0x81
je case.0x477f9b.237
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x2d7
mov dword [esp], 0x58fa54
call fcn.004258f0
lea esi, [esi]
mov edx, dword [ebp - 0x178]
mov ecx, dword [edi + 0xc]
mov esi, dword [edi + 0x10]
movd xmm3, dword [edi + 0x20]
mov eax, dword [edx]
movd xmm4, dword [edi + 0x1c]
movd xmm1, ecx
sub esi, ecx
punpckldq xmm1, xmm3
mov eax, dword [eax + 0xb4]
movd xmm0, esi
punpckldq xmm0, xmm4
cmp eax, 0x44dba0
jne 0x478ec1
lea esi, [ebp - 0x78]
movq qword [ebp - 0x78], xmm1
mov ecx, edx
movq qword [ebp - 0x70], xmm0
mov byte [esp + 4], 0x2d
mov dword [esp], esi
call fcn.0044d9a0
sub esp, 8
jmp case.0x477f9b.237
lea ebx, [edi + 0xc]
lea esi, [ebp - 0x78]
mov dword [esp], ebx
mov ecx, esi
call fcn.0044dcf0
mov ecx, ebx
sub esp, 4
call fcn.00451070
cmp dword [edi + 0x14], 0xd2
mov ecx, ebx
mov dword [esp], esi
jne 0x477b74
call fcn.0044dde0
mov edx, dword [edi + 0x14]
sub esp, 4
jmp 0x4777b3
movdqu xmm6, xmmword [edi + 0xc]
movdqu xmm7, xmmword [edi + 0x18]
lea ecx, [ebp - 0x48]
lea ebx, [edi + 0xc]
mov eax, dword [edi + 0x5c]
movq xmm4, qword [edi + 0xc]
mov byte [ebp - 0x38], 1
lea esi, [ebp - 0x78]
movups xmmword [ebp - 0xc0], xmm6
movq xmm6, qword [edi + 0x54]
mov dword [ebp - 0x70], eax
lea eax, [edi + 0x50]
movups xmmword [ebp - 0xb4], xmm7
movdqu xmm7, xmmword [ebp - 0xc0]
mov dword [ebp - 0x44], eax
mov eax, dword [edi + 0x30]
mov dword [edi + 0x30], ecx
mov ecx, ebx
movups xmmword [ebp - 0x6c], xmm7
movq xmm7, qword [edi + 0x28]
movq qword [ebp - 0x78], xmm6
movdqu xmm6, xmmword [edi + 0x18]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x48], 0x584e08
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x60], xmm6
movq qword [ebp - 0x50], xmm7
movq qword [ebp - 0x170], xmm4
call fcn.00451070
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x19], 0
je 0x478145
cmp dword [edi + 0x14], 0xd2
je 0x478b51
mov eax, dword [edi + 0x30]
mov esi, dword [ebp - 0x34]
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x478178
lea esi, [esi]
lea edx, [ebx + 8]
mov eax, dword [esi]
mov ecx, esi
mov dword [esp + 4], edx
mov edx, dword [ebx + 4]
mov dword [esp], edx
call dword [eax + 8]
mov ebx, dword [ebx]
sub esp, 8
test ebx, ebx
jne 0x478158
mov esi, dword [ebp - 0x34]
mov ecx, dword [edi + 0x14]
mov dword [edi + 0x30], esi
mov byte [ebp - 0x158], 1
mov edx, ecx
jmp 0x477597
sub ecx, 0xb8
cmp ecx, 0x14
ja case.0x477f0b.238
mov eax, 1
shl eax, cl
test eax, 0xb4009
jne case.0x477f0b.241
cmp ecx, 0x14
jne 0x4775cf
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.0042cca0
mov ecx, dword [edi + 0x14]
sub esp, 4
cmp ecx, 0x2e
jne 0x478206
lea ebx, [edi + 0xc]
lea esi, [esi]
mov ecx, ebx
call fcn.00451070
mov eax, dword [edi + 0x14]
cmp eax, 0x81
je 0x4781f7
sub eax, 0xa9
cmp eax, 0x51
ja 0x479242
mov ecx, ebx
call fcn.00451070
mov ecx, dword [edi + 0x14]
cmp ecx, 0x2e
je 0x4781d8
cmp byte [edi + 0x18], 0
jne 0x477610
cmp ecx, 0x98
je 0x478221
cmp ecx, 0x3c
jne 0x477610
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.0042d620
mov ecx, dword [edi + 0x14]
sub esp, 8
cmp ecx, 0x2e
jne 0x477610
lea ebx, [edi + 0xc]
lea esi, [ebp - 0x78]
jmp 0x478293
mov ecx, dword [edi + 0x60]
movd xmm3, dword [edi + 0x10]
punpckldq xmm0, xmm2
movd xmm1, dword [edi + 0xc]
mov eax, dword [ecx]
punpckldq xmm1, xmm3
punpcklqdq xmm0, xmm1
movups xmmword [ebp - 0x78], xmm0
mov dword [esp + 4], esi
mov dword [esp], 0x5c
call dword [eax + 8]
mov ecx, ebx
sub esp, 8
call fcn.00451070
mov ecx, dword [edi + 0x14]
cmp ecx, 0x2e
jne 0x477610
movd xmm0, dword [edi + 0xc]
movd xmm2, dword [edi + 0x10]
mov ecx, ebx
movd dword [ebp - 0x140], xmm0
movd dword [ebp - 0x168], xmm2
call fcn.00451070
mov eax, dword [edi + 0x14]
movd xmm2, dword [ebp - 0x168]
movd xmm0, dword [ebp - 0x140]
cmp eax, 0x81
je 0x478250
sub eax, 0xa9
cmp eax, 0x51
jbe 0x478250
mov dword [esp + 8], 0x58fcc4
mov ecx, edi
mov dword [esp + 4], 0x67
mov dword [esp], 0x58fa54
call fcn.004258f0
lea esi, [esi]
sub ecx, 0xaa
mov eax, 1
shl eax, cl
test al, 0x6d
jne case.0x477f0b.241
test eax, 0x182
jne case.0x477f0b.243
lea ebx, [edi + 0xc]
lea esi, [ebp - 0x78]
mov dword [esp], ebx
mov ecx, esi
call fcn.0044dcf0
movq xmm7, qword [edi + 0xc]
mov ecx, ebx
sub esp, 4
movq qword [ebp - 0x188], xmm7
call fcn.00451070
cmp byte [edi + 0x18], 0
je 0x478385
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x1c], 0
jne 0x4783c1
mov ecx, dword [edi + 0x60]
movq xmm6, qword [ebp - 0x188]
lea edx, [ebp - 0xc0]
mov eax, dword [ecx]
movq qword [ebp - 0xc0], xmm6
mov dword [esp + 4], edx
mov dword [esp], 0xea
call dword [eax + 8]
sub esp, 8
mov eax, dword [edi + 0x14]
cmp eax, 0xd7
jg 0x4789ce
cmp eax, 0xba
jg 0x478b7a
cmp eax, 0x81
je 0x4789ea
sub eax, 0xa9
cmp eax, 0xf
ja 0x4783c1
mov ecx, 0x837f
bt ecx, eax
jb 0x4789ea
mov dword [esp], esi
mov ecx, ebx
jmp 0x47808b
mov esi, dword [ebp - 0x174]
movzx eax, byte [edi + 0x18]
cmp byte [esi + 0x1a], 0
je 0x478753
test al, al
jne 0x4778cf
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.0042d620
mov ecx, dword [edi + 0x14]
sub esp, 8
jmp 0x4778cf
cmp byte [edi + 0x18], 0
je 0x478f07
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x1d], 0
jne 0x477610
mov ecx, dword [edi + 0x60]
movq xmm3, qword [edi + 0xc]
mov dword [ebp - 0x148], edx
lea edx, [ebp - 0x78]
mov dword [ebp - 0x158], esi
mov esi, edi
mov eax, dword [ecx]
mov dword [ebp - 0x13c], edx
movq qword [ebp - 0x78], xmm3
mov dword [esp + 4], edx
mov dword [esp], 0xf4
call dword [eax + 8]
mov edx, dword [ebp - 0x148]
sub esp, 8
movq xmm3, qword [esi + 0xc]
mov ecx, ebx
mov dword [ebp - 0x170], edx
movq qword [ebp - 0x148], xmm3
call fcn.00451070
mov edx, dword [ebp - 0x170]
cmp edx, 0xed
je 0x4784ec
mov edx, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x178]
cmp byte [edx + 0x19], 0
mov eax, dword [ecx]
je 0x478fc0
mov eax, dword [eax + 0xa8]
cmp eax, 0x44db40
jne 0x4790e1
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x6c], eax
mov byte [esp + 4], 0x2a
mov eax, dword [ebp - 0x13c]
mov dword [esp], eax
call fcn.0044d9a0
sub esp, 8
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x19], 0
je 0x4790a5
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x64], 0
mov ecx, esi
mov dword [ebp - 0x60], 0x1010001
mov dword [ebp - 0x5c], 0x10101
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call fcn.004774d0
sub esp, 8
movzx eax, byte [ebp - 0x199]
mov byte [esi + 0xdd], al
mov eax, dword [ebp - 0x198]
mov dword [esi + 0x110], eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
lea esp, [edi - 8]
pop edi
ret 8
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 0xac]
cmp eax, 0x44db60
jne 0x478cce
movdqa xmm4, xmm7
movq xmm7, qword [ebp - 0x188]
lea esi, [ebp - 0x78]
xor ebx, ebx
movq qword [ebp - 0x70], xmm4
movq qword [ebp - 0x78], xmm7
mov byte [esp + 4], 0x2b
mov dword [esp], esi
mov ecx, dword [ebp - 0x178]
call fcn.0044d9a0
sub esp, 8
jmp 0x4778b7
cmp ecx, 0xa9
jne case.0x477f0b.238
lea ebx, [edi + 0xc]
lea esi, [ebp - 0x78]
mov dword [esp], ebx
mov ecx, esi
call fcn.0044dcf0
mov ecx, ebx
sub esp, 4
call fcn.00451070
mov eax, dword [edi + 0x14]
cmp eax, 0x28
je 0x478aa3
cmp eax, 0xd8
jne 0x4783c1
mov dword [esp], esi
mov ecx, ebx
call fcn.0044dd70
mov ecx, ebx
sub esp, 4
call fcn.00451070
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.00474070
sub esp, 4
jmp 0x477607
cmp byte [edi + 0x18], 0
jne 0x477610
cmp ecx, 0x3c
je 0x47865b
cmp ecx, 0x98
jne 0x477610
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 0x60]
lea esi, [ebp - 0x78]
mov dword [ebp - 0x70], 9
add eax, 1
movd xmm0, eax
punpckldq xmm0, xmm0
movq qword [ebp - 0x78], xmm0
mov eax, dword [ecx]
mov dword [esp + 4], esi
mov dword [esp], 0x146
call dword [eax + 8]
sub esp, 8
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.0042d620
mov ecx, dword [edi + 0x14]
sub esp, 8
cmp ecx, 0x2e
jne 0x477610
lea esi, [ebp - 0x78]
jmp 0x4786db
mov ecx, dword [edi + 0x60]
movd xmm4, dword [edi + 0x10]
movd xmm5, dword [ebp - 0x140]
movd xmm1, dword [edi + 0xc]
mov edx, dword [ecx]
punpckldq xmm1, xmm4
punpckldq xmm0, xmm5
punpcklqdq xmm0, xmm1
movups xmmword [ebp - 0x78], xmm0
mov dword [esp + 4], esi
mov dword [esp], 0x5c
call dword [edx + 8]
mov ecx, ebx
sub esp, 8
call fcn.00451070
mov ecx, dword [edi + 0x14]
cmp ecx, 0x2e
jne 0x477610
movd xmm0, dword [edi + 0xc]
mov eax, dword [edi + 0x10]
mov ecx, ebx
movd dword [ebp - 0x168], xmm0
mov dword [ebp - 0x140], eax
call fcn.00451070
mov edx, dword [edi + 0x14]
movd xmm0, dword [ebp - 0x168]
cmp edx, 0x81
je 0x478690
sub edx, 0xa9
cmp edx, 0x51
jbe 0x478690
jmp 0x4782dc
mov ecx, dword [edi + 0x60]
movq xmm7, qword [edi + 0xc]
lea esi, [ebp - 0x78]
mov eax, dword [ecx]
movq qword [ebp - 0x78], xmm7
mov dword [esp + 4], esi
mov dword [esp], 8
call dword [eax + 8]
lea ecx, [edi + 0xc]
sub esp, 8
call fcn.00451070
mov ecx, dword [edi + 0x14]
jmp 0x477630
test al, al
je 0x4783e7
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 0x60]
lea esi, [eax + 1]
movd xmm0, eax
mov eax, dword [ecx]
movd xmm3, esi
lea esi, [ebp - 0x78]
punpckldq xmm0, xmm3
movq qword [ebp - 0x78], xmm0
mov dword [esp + 4], esi
mov dword [esp], 0xf2
call dword [eax + 8]
sub esp, 8
jmp 0x4783e7
mov eax, dword [ebp - 0x174]
mov esi, edi
cmp byte [eax + 0x1e], 0
je 0x47852e
cmp ecx, 0xc2
jne 0x47852e
cmp byte [esi + 0x18], 0
je 0x4790d3
cmp byte [eax + 0x1b], 0
jne 0x47852e
mov ecx, dword [esi + 0x60]
movq xmm6, qword [esi + 0xc]
lea edx, [ebp - 0x78]
mov dword [ebp - 0x13c], edx
mov eax, dword [ecx]
movq qword [ebp - 0x78], xmm6
mov dword [esp + 4], edx
mov dword [esp], 0xf1
call dword [eax + 8]
sub esp, 8
lea edi, [esi + 0xc]
mov ecx, edi
call fcn.00451070
lea edx, [esi + 0xb0]
lea eax, [ebp - 0x130]
mov dword [esp], edx
mov ecx, eax
call fcn.00419490
lea eax, [ebp - 0x130]
mov edx, dword [esi + 0xe0]
mov dword [ebp - 0x128], esi
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0x178]
sub esp, 4
mov dword [ebp - 0x134], edx
lea edx, [ebp - 0x134]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x124], edx
mov dword [ebp - 0xb4], eax
mov eax, dword [esi + 0x104]
mov dword [ebp - 0xc0], esi
cmp dword [esi + 0x108], eax
je 0x47902e
lea eax, [ebp - 0x135]
lea edx, [ebp - 0xc0]
mov byte [ebp - 0x135], 0
movd xmm1, eax
lea eax, [ebp - 0x128]
lea ecx, [esi + 0x104]
movd xmm4, eax
movdqa xmm0, xmm1
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0x13c]
punpckldq xmm0, xmm4
mov dword [ebp - 0x70], ecx
movq qword [ebp - 0x78], xmm0
movd xmm0, edx
punpckldq xmm0, xmm1
movq qword [ebp - 0xe0], xmm0
mov dword [esp + 4], eax
lea eax, [ebp - 0xe0]
mov dword [esp], eax
call fcn.00481f90
sub esp, 8
cmp dword [esi + 0x14], 0x3f
jne 0x479127
mov ecx, edi
call fcn.00451070
mov ecx, dword [ebp - 0x178]
mov eax, dword [ecx]
mov eax, dword [eax + 0x1c]
cmp eax, 0x44d680
jne 0x4791b8
mov byte [esp], 7
call fcn.0044d5a0
sub esp, 4
mov ebx, dword [ebp - 0x178]
mov dword [esp], ebx
mov ecx, dword [ebp - 0x12c]
call fcn.0044d050
mov eax, dword [ebp - 0x13c]
pxor xmm0, xmm0
mov ecx, esi
sub esp, 4
movups xmmword [ebp - 0x68], xmm0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x60], 0x1010001
mov dword [ebp - 0x5c], 0x10101
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004774d0
sub esp, 8
cmp dword [esi + 0x14], 0x3a
jne 0x479195
mov ecx, dword [ebp - 0x178]
mov eax, dword [ecx]
mov eax, dword [eax + 0x5c]
cmp eax, 0x44d860
jne 0x47918e
mov byte [esp], 0x17
call fcn.0044d5a0
sub esp, 4
mov ecx, edi
call fcn.00451070
mov eax, dword [ebp - 0x13c]
pxor xmm0, xmm0
mov ecx, esi
movups xmmword [ebp - 0x68], xmm0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x5e], 0x1010101
mov byte [ebp - 0x5a], 1
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call fcn.004774d0
mov eax, dword [ebp - 0x12c]
sub esp, 8
mov dword [esp], eax
mov ecx, dword [ebp - 0x130]
call fcn.004193a0
sub esp, 4
jmp 0x47852e
sub eax, 0xda
cmp eax, 0x1b
ja 0x4783c1
mov ecx, 0xe8cf61f
bt ecx, eax
jae 0x4783c1
mov dword [esp], esi
mov ecx, ebx
call fcn.0044dd70
sub esp, 4
cmp dword [edi + 0x14], 0xed
je 0x478a73
mov ecx, dword [edi + 0xc]
mov edx, dword [edi + 0x10]
mov esi, dword [ebp - 0x178]
movd xmm7, dword [edi + 0x20]
sub edx, ecx
movd xmm3, dword [edi + 0x1c]
movd xmm1, ecx
movd xmm0, edx
mov edx, dword [ebp - 0x174]
mov eax, dword [esi]
punpckldq xmm1, xmm7
punpckldq xmm0, xmm3
cmp byte [edx + 0x19], 0
je 0x478ba3
mov eax, dword [eax + 0x94]
cmp eax, 0x44dac0
jne 0x478f75
lea eax, [ebp - 0xc0]
movq qword [ebp - 0xc0], xmm1
mov ecx, esi
movq qword [ebp - 0xb8], xmm0
mov byte [esp + 4], 0x24
mov dword [esp], eax
call fcn.0044d9a0
sub esp, 8
mov eax, dword [ebp - 0x174]
cmp byte [eax + 0x19], 0
je 0x478bec
mov ecx, ebx
call fcn.00451070
cmp dword [edi + 0x14], 0xd2
jne 0x4791bf
mov ecx, ebx
call fcn.00451070
jmp 0x47779c
cmp byte [edi + 0x18], 0
mov ecx, ebx
mov dword [esp], esi
jne 0x47808b
call fcn.0044dd70
movd xmm0, dword [edi + 0xc]
mov ebx, dword [edi + 0x60]
lea ecx, [ebp - 0xc0]
sub esp, 4
punpckldq xmm0, xmm0
movq qword [ebp - 0xc0], xmm0
mov eax, dword [ebx]
mov dword [esp + 4], ecx
mov ecx, ebx
mov dword [esp], 0xcc
call dword [eax + 8]
sub esp, 8
jmp 0x4785f5
mov eax, dword [ebp - 0x178]
mov ecx, edi
mov dword [esp], eax
call fcn.0042cca0
sub esp, 4
jmp 0x477fb9
mov ecx, dword [edi + 0x60]
movd xmm1, dword [edi + 0xc]
lea esi, [ebp - 0x78]
movd xmm6, dword [edi + 0x10]
movd xmm0, dword [ebp - 0x140]
movd xmm7, dword [ebp - 0x180]
mov eax, dword [ecx]
punpckldq xmm1, xmm6
punpckldq xmm0, xmm7
punpcklqdq xmm0, xmm1
movups xmmword [ebp - 0x78], xmm0
mov dword [esp + 4], esi
mov dword [esp], 0xe1
call dword [eax + 8]
mov ecx, dword [edi + 0x14]
sub esp, 8
jmp 0x477610
mov dword [esp], esi
mov ecx, ebx
call fcn.0044dde0
mov edx, dword [edi + 0x14]
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
sub esp, 4
jmp 0x4777b3
lea ecx, [eax - 0xbb]
mov edx, 0x1fc86801
bt edx, ecx
jae 0x4783c1
cmp eax, 0xd2
jne 0x4789ea
mov dword [esp], esi
mov ecx, ebx
jmp 0x47808b
mov eax, dword [eax + 0xb4]
mov ecx, esi
cmp eax, 0x44dba0
jne 0x478f4f
lea eax, [ebp - 0xc0]
movq qword [ebp - 0xc0], xmm1
movq qword [ebp - 0xb8], xmm0
mov dword [esp], eax
mov byte [esp + 4], 0x2d
call fcn.0044d9a0
mov eax, dword [ebp - 0x174]
sub esp, 8
cmp byte [eax + 0x19], 0
jne 0x478a83
mov esi, dword [edi + 0x60]
movq xmm6, qword [ebp - 0x188]
lea ecx, [ebp - 0xc0]
mov eax, dword [esi]
movq qword [ebp - 0xc0], xmm6
mov dword [esp + 4], ecx
mov ecx, esi
mov dword [esp], 0x11c
call dword [eax + 8]
sub esp, 8
jmp 0x478a83
mov dword [esp], esi
mov ecx, edi
call fcn.00425820
mov eax, dword [ebp - 0x178]
sub esp, 4
mov dword [esp], eax
mov ecx, dword [ebp - 0x168]
call fcn.0044d050
sub esp, 4
mov eax, dword [ebp - 0x168]
mov dword [esp], eax
mov ecx, dword [ebp - 0x140]
call fcn.004193a0
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0x584df4
sub esp, 4
test edx, edx
je 0x477607
mov ebx, dword [edx + 4]
mov esi, dword [edx]
test ebx, ebx
je 0x478cac
mov dword [ebp - 0x168], esi
mov esi, edx
mov ecx, dword [esi + 0xc]
mov edx, ebx
mov ebx, dword [ebx + 4]
mov eax, dword [ecx]
mov dword [esp + 8], 4
mov dword [esp + 4], 0xfec
mov dword [esp], edx
call dword [eax + 0xc]
sub esp, 0xc
test ebx, ebx
jne 0x478c7d
mov edx, esi
mov esi, dword [ebp - 0x168]
mov eax, dword [esi]
mov ecx, esi
mov dword [esp + 8], 4
mov dword [esp + 4], 0x10
mov dword [esp], edx
call dword [eax + 0xc]
sub esp, 0xc
jmp 0x477607
movq xmm5, qword [ebp - 0x188]
movq qword [ebp - 0x118], xmm7
xor ebx, ebx
movq qword [ebp - 0x120], xmm5
movdqu xmm7, xmmword [ebp - 0x120]
movups xmmword [esp], xmm7
mov ecx, dword [ebp - 0x178]
call eax
sub esp, 0x10
jmp 0x4778b7
movq xmm7, qword [ebp - 0x188]
movq xmm3, qword [ebp - 0x190]
movq qword [ebp - 0x120], xmm7
movq qword [ebp - 0x118], xmm3
movdqu xmm4, xmmword [ebp - 0x120]
movups xmmword [esp], xmm4
call eax
sub esp, 0x10
jmp 0x4778b2
lea ecx, [edx + 4]
call fcn.0044d530
mov edx, dword [eax + 8]
mov dword [ebp - 0x180], edx
jmp 0x477ccb
mov ecx, dword [edi + 0x60]
movq xmm7, qword [ebp - 0x180]
lea esi, [ebp - 0x78]
mov eax, dword [ecx]
movq qword [ebp - 0x78], xmm7
mov dword [esp + 4], esi
mov dword [esp], 0x137
call dword [eax + 8]
mov ecx, dword [edi + 0x14]
sub esp, 8
cmp ecx, 0x5b
jne 0x477d32
mov ecx, dword [edi + 0x60]
movd xmm3, dword [ebp - 0x140]
lea esi, [ebp - 0x78]
movd xmm0, dword [ebp - 0x168]
movd xmm1, dword [ebp - 0x188]
mov eax, dword [ecx]
punpckldq xmm0, xmm3
punpckldq xmm1, xmm3
punpcklqdq xmm1, xmm0
movups xmmword [ebp - 0x78], xmm1
mov dword [esp + 4], esi
mov dword [esp], 0x138
call dword [eax + 8]
mov ecx, dword [edi + 0x14]
sub esp, 8
jmp 0x477d32
mov eax, dword [esi + 0xc]
lea ebx, [esi + 0xc]
mov ecx, ebx
mov dword [ebp - 0x140], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x180], eax
call fcn.00451070
mov edi, dword [esi + 0x14]
mov byte [ebp - 0x168], 1
mov edx, edi
jmp 0x47755e
mov dword [esp], edx
mov ecx, ebx
call fcn.0044dde0
mov edx, dword [edi + 0x14]
sub esp, 4
jmp 0x4777b3
sub eax, 0xdc
cmp eax, 0x18
ja 0x478e25
mov ecx, 0x1a00d87
bt ecx, eax
jb 0x477c6b
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x1c7
mov dword [esp], 0x58fa54
call fcn.004258f0
lea esi, cs:[esi]
mov ecx, dword [ebp - 0x140]
call fcn.00424480
mov edx, dword [edi + 0xb4]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x168], ecx
jmp 0x477e29
cmp eax, 0xaa
jg 0x478f1d
cmp eax, 0xa8
jg 0x477c6b
cmp eax, 0x81
je 0x477c6b
jmp 0x478e25
mov dword [esp], 0x5ec120
call fcn.0054ffc0
test eax, eax
je 0x477e04
mov dword [esp], 0x4699b0
call fcn.004013f0
mov dword [esp], 0x5ec120
call fcn.00550090
jmp 0x477e04
movq qword [ebp - 0x110], xmm1
mov ecx, edx
movq qword [ebp - 0x108], xmm0
movdqu xmm5, xmmword [ebp - 0x110]
movups xmmword [esp], xmm5
call eax
sub esp, 0x10
jmp case.0x477f9b.237
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x336
mov dword [esp], 0x58fa54
call fcn.004258f0
lea eax, [ebp - 0x78]
mov dword [ebp - 0x158], esi
mov esi, edi
mov dword [ebp - 0x13c], eax
jmp 0x478461
sub eax, 0xac
cmp eax, 3
jbe 0x477c6b
jmp 0x478e25
mov dword [esp + 4], 4
mov dword [esp], 0x10
mov ecx, dword [ebp - 0x168]
call eax
sub esp, 8
jmp 0x477db8
movq qword [ebp - 0x100], xmm1
movq qword [ebp - 0xf8], xmm0
movdqu xmm5, xmmword [ebp - 0x100]
movups xmmword [esp], xmm5
call eax
sub esp, 0x10
jmp 0x478a73
movq qword [ebp - 0xf0], xmm1
mov ecx, esi
movq qword [ebp - 0xe8], xmm0
movdqu xmm4, xmmword [ebp - 0xf0]
movups xmmword [esp], xmm4
call eax
sub esp, 0x10
jmp 0x478a73
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x2ca
mov dword [esp], 0x58fa54
call fcn.004258f0
lea esi, cs:[esi]
mov eax, dword [eax + 0xb4]
cmp eax, 0x44dba0
jne 0x479148
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x6c], eax
mov byte [esp + 4], 0x2d
mov eax, dword [ebp - 0x13c]
mov dword [esp], eax
call fcn.0044d9a0
sub esp, 8
jmp 0x4784ec
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x125
mov dword [esp], 0x58fa54
call fcn.004258f0
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x60], 0x1010000
mov ecx, esi
mov byte [ebp - 0x5a], 0
mov dword [esi + 0xe0], eax
mov eax, dword [ebp - 0x174]
movdqu xmm7, xmmword [eax]
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x68], eax
mov eax, 0x101
mov word [ebp - 0x5c], ax
mov eax, dword [ebp - 0x13c]
movups xmmword [ebp - 0x158], xmm7
movups xmmword [ebp - 0x78], xmm7
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call fcn.00427b90
mov eax, dword [ebp - 0x124]
sub esp, 8
mov edx, dword [eax]
mov eax, dword [ebp - 0x128]
mov dword [eax + 0xe0], edx
jmp 0x4788d0
mov ecx, dword [esi + 0x60]
movq xmm6, qword [ebp - 0x148]
mov edx, dword [ebp - 0x13c]
mov eax, dword [ecx]
movq qword [ebp - 0x78], xmm6
mov dword [esp + 4], edx
mov dword [esp], 0x142
call dword [eax + 8]
sub esp, 8
jmp 0x4784fc
lea eax, [ebp - 0x78]
mov dword [ebp - 0x13c], eax
jmp 0x4787eb
mov edx, dword [ebp - 0x140]
mov dword [ebp - 0x120], edx
mov edx, dword [ebp - 0x180]
mov dword [ebp - 0x11c], edx
mov edx, dword [ebp - 0x158]
mov dword [ebp - 0x118], edx
mov edx, dword [ebp - 0x168]
mov dword [ebp - 0x114], edx
movdqu xmm4, xmmword [ebp - 0x120]
movups xmmword [esp], xmm4
call eax
sub esp, 0x10
jmp 0x4784ec
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, esi
mov dword [esp + 4], 0x37a
mov dword [esp], 0x58fa54
call fcn.004258f0
lea esi, [esi]
mov edx, dword [ebp - 0x140]
mov dword [ebp - 0x120], edx
mov edx, dword [ebp - 0x180]
mov dword [ebp - 0x11c], edx
mov edx, dword [ebp - 0x158]
mov dword [ebp - 0x118], edx
mov edx, dword [ebp - 0x168]
mov dword [ebp - 0x114], edx
movdqu xmm5, xmmword [ebp - 0x120]
movups xmmword [esp], xmm5
call eax
sub esp, 0x10
jmp 0x4784ec
call eax
jmp 0x478977
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, esi
mov dword [esp + 4], 0x384
mov dword [esp], 0x58fa54
call fcn.004258f0
lea esi, cs:[esi]
call eax
jmp 0x478903
mov esi, edi
jmp 0x47852e
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x8f
mov dword [esp], 0x58fa54
call fcn.004258f0
call fcn.00427b20
lea esi, [esi]
call fcn.00471540
mov ecx, eax
mov eax, dword [eax]
mov dword [esp + 4], 4
mov dword [esp], 0x1000
call dword [eax + 8]
mov ecx, eax
mov eax, dword [edi + 0x84]
sub esp, 8
mov dword [ecx + 4], 0xff8
lea edx, [ecx + 0x1000]
mov dword [ecx], eax
lea eax, [ecx + 8]
mov dword [edi + 0x84], ecx
add ecx, 0x18
mov dword [edi + 0x8c], edx
mov dword [edi + 0x88], ecx
jmp 0x477db8
mov dword [esp + 8], str.parse_and_visit_typescript_type_expression_no_scope
mov ecx, edi
mov dword [esp + 4], 0x30b
mov dword [esp], 0x58fa54
call fcn.004258f0