Function at 0x10015b7e
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
and esp, 0xfffffff0
sub esp, 0x34
mov eax, dword [0x10032018]
mov ebx, dword [0x10032014]
test eax, eax
je 0x10015070
movzx eax, byte [0x10032024]
mov esi, dword [0x1003201c]
mov byte [esi], al
mov dword [esp + 0x24], esi
mov eax, dword [0x10032010]
mov edi, dword [0x1003200c]
mov dword [esp + 0x20], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x28], edi
xor edi, edi
nop
mov ecx, dword [esp + 0x2c]
movzx eax, byte [esi]
cmp word [ebx + ebx + 0x1002b100], 0
cmovne ecx, ebx
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x28]
cmovne ecx, esi
mov dword [esp + 0x28], ecx
mov ecx, 1
cmovne edi, ecx
movzx ecx, byte [eax + 0x1002b000]
movsx eax, word [ebx + ebx + 0x1002abe0]
add eax, ecx
movsx edx, word [eax + eax + 0x10029940]
cmp ebx, edx
je 0x10014ffc
mov esi, esi
lea edi, [edi]
movsx ebx, word [ebx + ebx + 0x1002a800]
mov edx, ebx
cmp bx, 0x1df
jle 0x10014fe8
movzx ecx, byte [ecx + 0x1002afc0]
movsx eax, word [ebx + ebx + 0x1002abe0]
add eax, ecx
cmp dx, word [eax + eax + 0x10029940]
jne 0x10014fd0
movsx ebx, word [eax + eax + 0x1002a0a0]
add esi, 1
cmp ebx, 0x1df
jne 0x10014f80
mov eax, edi
test al, al
je 0x1001512b
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov dword [0x1003200c], edi
mov dword [0x10032010], eax
mov esi, dword [esp + 0x24]
mov edx, edi
mov dword [0x1003201c], edi
movsx eax, word [eax + eax + 0x1002b100]
sub edx, esi
mov dword [0x100320e4], esi
mov dword [0x100320e0], edx
movzx edx, byte [edi]
mov byte [edi], 0
mov byte [0x10032024], dl
cmp eax, 0xb0
ja case.default.0x10015069
jmp dword [eax*4 + 0x10029560]
mov dword [0x10032018], 1
test ebx, ebx
jne 0x10015088
mov dword [0x10032014], 1
mov eax, dword [0x10032008]
test eax, eax
je 0x1001514f
mov edi, dword [0x10032004]
test edi, edi
je 0x10015138
mov eax, dword [0x10032028]
test eax, eax
je 0x100150ef
mov edx, dword [0x10032030]
lea edx, [eax + edx*4]
mov eax, dword [edx]
test eax, eax
je 0x100150ef
mov esi, dword [eax + 8]
mov ecx, dword [eax + 0x10]
mov ebx, dword [0x10032014]
mov dword [0x100320e4], esi
mov eax, dword [edx]
mov dword [0x10032020], ecx
mov eax, dword [eax]
mov dword [0x1003201c], esi
mov dword [0x10032008], eax
movzx eax, byte [esi]
mov byte [0x10032024], al
jmp 0x10014f5c
call sym._asmshader_ensure_buffer_stack
mov edx, dword [0x10032030]
mov eax, dword [0x10032028]
mov dword [esp + 4], 0x4000
lea ebx, [eax + edx*4]
mov eax, dword [0x10032008]
mov dword [esp], eax
call sym._asmshader__create_buffer
mov edx, dword [0x10032030]
mov dword [ebx], eax
mov eax, dword [0x10032028]
lea edx, [eax + edx*4]
mov eax, dword [edx]
jmp 0x100150bb
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
jmp 0x10015030
mov dword [esp], 1
call dword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov dword [0x10032004], eax
jmp 0x100150a3
mov dword [esp], 0
call dword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov dword [0x10032008], eax
jmp 0x10015095
test byte [0x1001f190], 8
je case.0x10015069.169
mov eax, dword [0x100320e4]
mov dword [esp + 0xc], str.line_info_update:__s
mov dword [esp + 8], str.asmshader_lex
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x1001f190
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_5
movzx eax, byte [0x10032024]
mov esi, dword [0x1003201c]
mov ebx, dword [0x10032014]
jmp 0x10014f5c
mov eax, 0x16f
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, 0x16e
jmp 0x100151b9
mov eax, 0x16d
jmp 0x100151b9
mov eax, 0x16c
jmp 0x100151b9
mov eax, 0x16b
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x16a
jmp 0x100151b9
mov eax, 0x169
jmp 0x100151b9
mov eax, 0x168
jmp 0x100151b9
mov eax, 0x167
jmp 0x100151b9
mov eax, 0x166
jmp 0x100151b9
mov eax, 0x165
jmp 0x100151b9
mov eax, 0x164
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 2
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x163
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 2
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x162
jmp 0x100151b9
mov eax, 0x161
jmp 0x100151b9
mov eax, 0x160
jmp 0x100151b9
mov eax, 0x15f
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x15d
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 2
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x15e
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x15c
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x15b
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x15a
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x159
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x158
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x157
jmp 0x100151b9
mov eax, dword [0x100320e4]
add eax, 1
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x156
jmp 0x100151b9
mov eax, 0x155
jmp 0x100151b9
mov eax, 0x154
jmp 0x100151b9
mov eax, 0x153
jmp 0x100151b9
mov eax, 0x152
jmp 0x100151b9
mov eax, 0x151
jmp 0x100151b9
mov eax, 0x150
jmp 0x100151b9
mov eax, 0x14f
jmp 0x100151b9
mov eax, 0x14e
jmp 0x100151b9
mov eax, 0x14d
jmp 0x100151b9
mov eax, 0x14c
jmp 0x100151b9
mov eax, 0x14b
jmp 0x100151b9
mov eax, 0x14a
jmp 0x100151b9
mov eax, 0x149
jmp 0x100151b9
mov eax, 0x148
jmp 0x100151b9
mov eax, 0x147
jmp 0x100151b9
mov eax, 0x146
jmp 0x100151b9
mov eax, 0x145
jmp 0x100151b9
mov eax, 0x144
jmp 0x100151b9
mov eax, 0x143
jmp 0x100151b9
mov eax, 0x142
jmp 0x100151b9
mov eax, 0x141
jmp 0x100151b9
mov eax, 0x140
jmp 0x100151b9
mov eax, 0x13f
jmp 0x100151b9
mov eax, 0x13e
jmp 0x100151b9
mov eax, 0x13d
jmp 0x100151b9
mov eax, 0x13c
jmp 0x100151b9
mov eax, 0x13b
jmp 0x100151b9
mov eax, 0x13a
jmp 0x100151b9
mov eax, 0x139
jmp 0x100151b9
mov eax, 0x138
jmp 0x100151b9
mov eax, 0x137
jmp 0x100151b9
mov eax, 0x136
jmp 0x100151b9
mov eax, 0x135
jmp 0x100151b9
mov eax, 0x134
jmp 0x100151b9
mov eax, 0x133
jmp 0x100151b9
mov eax, 0x132
jmp 0x100151b9
mov eax, 0x131
jmp 0x100151b9
mov eax, 0x130
jmp 0x100151b9
mov eax, dword [0x100320e4]
movsx eax, byte [eax]
jmp 0x100151b9
mov eax, dword [0x100320e4]
movsx eax, byte [eax]
jmp 0x100151b9
mov eax, dword [0x100320e4]
movsx eax, byte [eax]
jmp 0x100151b9
mov eax, dword [0x100320e4]
movsx eax, byte [eax]
jmp 0x100151b9
mov dword [0x10032120], 0
mov eax, 0x1a1
jmp 0x100151b9
mov dword [0x10032120], 1
mov eax, 0x1a1
jmp 0x100151b9
mov eax, dword [0x100320e4]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atof]
mov ebx, dword [0x100320e4]
pxor xmm0, xmm0
mov dword [esp + 4], 0x2e
fstp qword [esp + 0x2c]
mov dword [esp], ebx
cvtsd2ss xmm0, qword [esp + 0x2c]
movss dword [0x10032120], xmm0
call sym._strchr
mov edx, eax
xor eax, eax
test edx, edx
je 0x100162d0
mov dword [0x10032124], eax
mov eax, 0x1a0
jmp 0x100151b9
mov eax, 0x186
jmp 0x100151b9
mov eax, 0x183
jmp 0x100151b9
mov eax, 0x182
jmp 0x100151b9
mov eax, 0x181
jmp 0x100151b9
mov eax, 0x180
jmp 0x100151b9
mov eax, 0x185
jmp 0x100151b9
mov eax, 0x184
jmp 0x100151b9
mov eax, 0x17f
jmp 0x100151b9
mov eax, 0x17e
jmp 0x100151b9
mov eax, 0x17d
jmp 0x100151b9
mov eax, 0x17c
jmp 0x100151b9
mov eax, 0x17b
jmp 0x100151b9
mov eax, 0x17a
jmp 0x100151b9
mov eax, 0x179
jmp 0x100151b9
mov eax, 0x178
jmp 0x100151b9
mov eax, dword [0x100320e4]
movzx eax, byte [eax]
sub eax, 0x61
cmp al, 0x19
ja case.0x1001567b.2
movzx eax, al
jmp dword [eax*4 + 0x10029824]
mov eax, dword [0x100320e4]
movsx eax, byte [eax]
jmp 0x100151b9
mov eax, 0x177
jmp 0x100151b9
mov eax, 0x176
jmp 0x100151b9
mov eax, 0x175
jmp 0x100151b9
mov eax, 0x174
jmp 0x100151b9
mov eax, 0x173
jmp 0x100151b9
mov eax, 0x172
jmp 0x100151b9
mov eax, 0x171
jmp 0x100151b9
mov eax, 0x170
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 0xb], 0
jne 0x10016301
mov dword [0x10032120], 0
mov eax, 0x199
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 9], 0
jne 0x1001622f
mov dword [0x10032120], 0
mov eax, 0x198
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 0xd], 0
jne 0x100161de
mov dword [0x10032120], 0
mov eax, 0x193
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 8], 0
jne 0x100161a8
mov dword [0x10032120], 0
mov eax, 0x197
jmp 0x100151b9
mov eax, 0x18b
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 6], 0
jne 0x10016214
mov dword [0x10032120], 0
mov eax, 0x195
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 7], 0
jne 0x100161f9
mov dword [0x10032120], 0
mov eax, 0x194
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 9], 0
jne 0x1001624a
mov dword [0x10032120], 0
mov eax, 0x196
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 9], 0
jne 0x100161c3
mov dword [0x10032120], 0
mov eax, 0x191
jmp 0x100151b9
mov eax, 0x189
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 0xc], 0
jne 0x10016265
mov dword [0x10032120], 0
mov eax, 0x192
jmp 0x100151b9
mov eax, 0x18c
jmp 0x100151b9
mov eax, 0x18a
jmp 0x100151b9
mov eax, 0x188
jmp 0x100151b9
mov eax, 0x187
jmp 0x100151b9
mov eax, dword [0x100320e4]
movsx eax, byte [eax]
jmp 0x100151b9
mov eax, 0x10f
jmp 0x100151b9
mov eax, 0x10e
jmp 0x100151b9
mov eax, 0x10d
jmp 0x100151b9
mov eax, 0x10c
jmp 0x100151b9
mov eax, 0x10b
jmp 0x100151b9
mov eax, 0x10a
jmp 0x100151b9
mov eax, 0x109
jmp 0x100151b9
mov eax, 0x108
jmp 0x100151b9
mov eax, 0x107
jmp 0x100151b9
mov eax, 0x106
jmp 0x100151b9
mov eax, 0x105
jmp 0x100151b9
mov eax, 0x104
jmp 0x100151b9
mov eax, 0x103
jmp 0x100151b9
mov eax, 0x102
jmp 0x100151b9
movzx eax, byte [0x10032024]
mov byte [edi], al
mov edi, dword [0x1003200c]
mov eax, dword [0x10032010]
jmp 0x10015030
xor eax, eax
jmp 0x100151b9
mov eax, 0x12f
jmp 0x100151b9
mov eax, 0x12e
jmp 0x100151b9
mov eax, 0x12d
jmp 0x100151b9
mov eax, 0x12c
jmp 0x100151b9
mov eax, 0x12b
jmp 0x100151b9
mov eax, 0x12a
jmp 0x100151b9
mov eax, 0x129
jmp 0x100151b9
mov eax, 0x128
jmp 0x100151b9
mov eax, 0x127
jmp 0x100151b9
mov eax, 0x126
jmp 0x100151b9
mov eax, 0x125
jmp 0x100151b9
mov eax, 0x124
jmp 0x100151b9
mov eax, 0x123
jmp 0x100151b9
mov eax, 0x122
jmp 0x100151b9
mov eax, 0x121
jmp 0x100151b9
mov eax, 0x120
jmp 0x100151b9
mov eax, 0x11f
jmp 0x100151b9
mov eax, 0x11e
jmp 0x100151b9
mov eax, 0x11d
jmp 0x100151b9
mov eax, 0x11c
jmp 0x100151b9
mov eax, 0x11b
jmp 0x100151b9
mov eax, 0x11a
jmp 0x100151b9
mov eax, 0x119
jmp 0x100151b9
mov eax, 0x118
jmp 0x100151b9
mov eax, 0x117
jmp 0x100151b9
mov eax, 0x116
jmp 0x100151b9
mov eax, 0x115
jmp 0x100151b9
mov eax, 0x114
jmp 0x100151b9
mov eax, 0x113
jmp 0x100151b9
mov eax, 0x112
jmp 0x100151b9
mov eax, 0x111
jmp 0x100151b9
mov eax, 0x110
jmp 0x100151b9
mov eax, 0x18f
jmp 0x100151b9
mov eax, 0x18e
jmp 0x100151b9
mov eax, 0x18d
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 7], 0
jne 0x10015c42
mov dword [0x10032120], 0
mov eax, 0x19e
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 6], 0
jne 0x10015c5d
mov dword [0x10032120], 0
mov eax, 0x19d
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 4], 0
jne 0x10015c78
mov dword [0x10032120], 0
mov eax, 0x19c
jmp 0x100151b9
mov eax, dword [0x100320e4]
cmp byte [eax + 6], 0
jne 0x10015cae
mov dword [0x10032120], 0
mov eax, 0x19b
jmp 0x100151b9
mov eax, dword [0x10032004]
mov dword [esp + 8], 1
mov dword [esp + 0xc], eax
mov eax, dword [0x100320e0]
mov dword [esp + 4], eax
mov eax, dword [0x100320e4]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_fwrite]
jmp case.0x10015069.169
mov eax, dword [0x100320e4]
mov dword [esp + 4], str.Line__u:_Unexpected_input__s_n
mov dword [esp], 0x10032100
mov dword [esp + 0xc], eax
mov eax, dword [0x1003211c]
mov dword [esp + 8], eax
call sym._asmparser_message
mov dword [0x1003210c], 2
jmp case.0x10015069.169
mov eax, dword [0x100320e4]
cmp byte [eax + 0xa], 0
jne 0x10015c93
mov dword [0x10032120], 0
mov eax, 0x19a
jmp 0x100151b9
mov eax, edi
sub eax, dword [0x100320e4]
mov esi, dword [0x10032028]
sub eax, 1
mov dword [esp + 0x18], eax
movzx eax, byte [0x10032024]
mov dword [esp + 0x28], esi
mov byte [edi], al
mov eax, dword [0x10032030]
mov dword [esp + 0x2c], eax
lea eax, [esi + eax*4]
mov ecx, dword [eax]
mov dword [esp + 0x20], eax
mov esi, dword [ecx + 0x2c]
test esi, esi
je 0x100160f0
mov esi, dword [0x10032020]
mov ebx, dword [0x1003201c]
mov eax, dword [ecx + 4]
mov edx, dword [0x100320e4]
mov dword [esp + 0x1c], ebx
lea ebx, [eax + esi]
cmp dword [esp + 0x1c], ebx
jbe 0x10016066
lea ebx, [eax + esi + 1]
cmp dword [esp + 0x1c], ebx
ja 0x10015df4
mov esi, dword [esp + 0x1c]
mov ebx, dword [ecx + 0x28]
sub esi, edx
test ebx, ebx
jne 0x10015d09
cmp esi, 1
jne 0x10015cdb
mov eax, dword [0x10032014]
mov dword [0x1003201c], edx
lea edx, [eax - 1]
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, 1
add eax, 0xb0
jmp 0x1001505e
mov eax, 0x190
jmp 0x100151b9
add dword [0x1003211c], 1
jmp case.0x10015069.169
add eax, 7
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x19e
jmp 0x100151b9
add eax, 6
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x19d
jmp 0x100151b9
add eax, 4
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x19c
jmp 0x100151b9
add eax, 0xa
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x19a
jmp 0x100151b9
add eax, 6
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x19b
jmp 0x100151b9
mov eax, dword [0x10032028]
mov dword [esp + 0x28], eax
mov eax, dword [0x10032030]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov edx, dword [eax + edi*4]
mov eax, dword [0x10032020]
add eax, dword [edx + 4]
mov dword [0x1003201c], eax
mov edi, eax
call sym._yy_get_previous_state
mov esi, dword [0x100320e4]
mov dword [esp + 0x24], esi
jmp 0x10015030
lea ebx, [esi - 1]
test ebx, ebx
jle 0x10015d6e
lea ecx, [eax + 0xf]
sub ecx, edx
cmp ecx, 0x1e
jbe 0x10015dfe
lea ecx, [esi - 2]
cmp ecx, 0xe
jbe 0x10015dfe
mov ecx, ebx
mov esi, eax
and ecx, 0xfffffff0
add ecx, eax
mov dword [esp + 0x14], ecx
mov ecx, edx
movdqu xmm1, xmmword [ecx]
add esi, 0x10
add ecx, 0x10
movups xmmword [esi - 0x10], xmm1
cmp dword [esp + 0x14], esi
jne 0x10015d39
mov ecx, ebx
mov esi, ebx
and ecx, 0xfffffff0
cmp ecx, ebx
je 0x10015d68
movzx ebx, byte [edx + ecx]
mov byte [eax + ecx], bl
add ecx, 1
cmp esi, ecx
jg 0x10015d58
mov ebx, esi
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
cmp dword [ecx + 0x2c], 2
mov esi, ecx
je 0x10015ecb
mov eax, ebx
not eax
add eax, dword [ecx + 0xc]
test eax, eax
jg 0x10015e30
mov edx, dword [esp + 0x1c]
jmp 0x10015dd3
mov eax, dword [esi + 0xc]
test eax, eax
jle 0x10015e20
add eax, eax
mov dword [esi + 0xc], eax
add eax, 2
mov dword [esp + 4], eax
mov dword [esp], ecx
call dword [sym.imp.ucrtbase.dll_realloc]
mov dword [esi + 4], eax
test eax, eax
je 0x10015dea
mov edx, dword [esp + 0x2c]
add edx, eax
mov eax, dword [esp + 0x20]
mov dword [0x1003201c], edx
mov esi, dword [eax]
mov eax, ebx
not eax
add eax, dword [esi + 0xc]
test eax, eax
jg 0x10015e30
mov ecx, dword [esi + 4]
mov eax, dword [esi + 0x14]
sub edx, ecx
mov dword [esp + 0x2c], edx
test eax, eax
jne 0x10015d8f
mov dword [esi + 4], 0
mov eax, str.fatal_error___scanner_input_buffer_overflow
call sym._yy_fatal_error
mov eax, str.fatal_flex_scanner_internal_error__end_of_buffer_missed
call sym._yy_fatal_error
lea ecx, [eax + ebx]
mov esi, ecx
movzx ecx, byte [edx]
add eax, 1
add edx, 1
mov byte [eax - 1], cl
cmp esi, eax
jne 0x10015e03
jmp 0x10015d68
lea edx, [eax + 7]
cmovns edx, eax
sar edx, 3
add eax, edx
jmp 0x10015d9c
cmp eax, 0x2000
mov edx, 0x2000
cmovle edx, eax
mov eax, dword [esi + 0x18]
xor esi, esi
mov dword [esp + 0x2c], edx
mov dword [esp + 0x20], eax
test eax, eax
je 0x10015f99
mov eax, dword [0x10032008]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_getc]
mov dword [esp + 0x20], eax
cmp eax, 0xffffffff
je 0x10015f6c
mov edx, dword [0x10032028]
mov ecx, dword [0x10032030]
mov dword [esp + 0x28], edx
mov edx, dword [edx + ecx*4]
mov eax, edx
lea edx, [ebx + esi]
add esi, 1
add edx, dword [eax + 4]
cmp dword [esp + 0x20], 0xa
je 0x10016122
movzx eax, byte [esp + 0x20]
mov byte [edx], al
cmp dword [esp + 0x2c], esi
jne 0x10015e52
mov dword [esp + 0x2c], ecx
mov dword [0x10032020], esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x20], 0
lea edx, [eax + ecx*4]
mov eax, dword [edx]
mov dword [eax + 0x10], esi
test esi, esi
jne 0x10015f06
jmp 0x10015edc
mov dword [0x10032020], 0
mov dword [ecx + 0x10], 0
test ebx, ebx
je 0x1001616a
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x20], 2
lea edx, [eax + esi*4]
mov esi, dword [0x10032020]
mov eax, dword [edx]
mov dword [eax + 0x2c], 2
mov ecx, dword [edx]
add ebx, esi
mov eax, dword [ecx + 4]
cmp ebx, dword [ecx + 0xc]
jg 0x1001612e
mov byte [eax + ebx], 0
mov eax, dword [edx]
mov dword [0x10032020], ebx
mov eax, dword [eax + 4]
mov byte [eax + ebx + 1], 0
mov eax, dword [edx]
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x20]
mov dword [0x100320e4], edx
cmp eax, 1
je 0x10015c0b
cmp eax, 2
je 0x10015cc9
mov esi, dword [esp + 0x18]
add esi, edx
mov dword [0x1003201c], esi
call sym._yy_get_previous_state
mov ebx, eax
mov eax, dword [0x100320e4]
mov dword [esp + 0x24], eax
jmp 0x10014f62
mov eax, dword [0x10032008]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_ferror]
test eax, eax
jne 0x1001603f
mov eax, dword [0x10032028]
mov dword [esp + 0x28], eax
mov eax, dword [0x10032030]
mov dword [esp + 0x2c], eax
jmp 0x10015ea7
mov eax, dword [sym.imp.ucrtbase.dll__errno]
mov dword [esp + 0x28], eax
call eax
mov dword [eax], 0
jmp 0x10015fe7
mov eax, dword [0x10032008]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_ferror]
test eax, eax
je 0x10016049
mov esi, dword [esp + 0x28]
call esi
cmp dword [eax], 4
jne 0x1001603f
call esi
mov dword [eax], 0
mov eax, dword [0x10032008]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_clearerr]
mov eax, dword [0x10032008]
mov edx, dword [0x10032030]
mov dword [esp + 4], 1
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 8], eax
mov eax, dword [0x10032028]
mov eax, dword [eax + edx*4]
mov esi, dword [eax + 4]
add esi, ebx
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll_fread]
mov dword [0x10032020], eax
mov esi, eax
test eax, eax
je 0x10015fb0
mov eax, dword [0x10032030]
mov ecx, dword [0x10032028]
lea edx, [ecx + eax*4]
mov eax, dword [edx]
mov dword [eax + 0x10], esi
jmp 0x10015f06
mov eax, str.input_in_flex_scanner_failed
call sym._yy_fatal_error
mov eax, dword [0x10032028]
mov esi, dword [0x10032020]
mov dword [esp + 0x28], eax
mov eax, dword [0x10032030]
mov dword [esp + 0x2c], eax
jmp 0x10015ead
mov esi, dword [esp + 0x18]
add esi, edx
mov dword [0x1003201c], esi
call sym._yy_get_previous_state
cmp word [eax + eax + 0x1002b100], 0
je 0x1001608d
mov dword [0x10032010], eax
mov dword [0x1003200c], esi
movsx ecx, word [eax + eax + 0x1002abe0]
lea edx, [ecx + 1]
movsx ecx, word [ecx + ecx + 0x10029942]
cmp ecx, eax
je 0x100160c3
movsx eax, word [eax + eax + 0x1002a800]
movsx ecx, word [eax + eax + 0x1002abe0]
lea edx, [ecx + 1]
movsx ecx, word [ecx + ecx + 0x10029942]
cmp eax, ecx
jne 0x100160a4
mov eax, dword [0x100320e4]
movsx ebx, word [edx + edx + 0x1002a0a0]
mov dword [esp + 0x24], eax
cmp ebx, 0x1df
je 0x100160e0
test ebx, ebx
jne 0x10016114
mov edi, dword [0x1003200c]
mov eax, dword [0x10032010]
jmp 0x10015030
mov eax, dword [0x10032008]
mov esi, dword [ecx + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x20]
mov dword [0x10032020], esi
mov eax, dword [ecx]
mov dword [eax + 0x2c], 1
mov ecx, dword [ecx]
jmp 0x10015bc3
add esi, 1
mov dword [0x1003201c], esi
jmp 0x10014f62
mov dword [esp + 0x2c], ecx
mov byte [edx], 0xa
jmp 0x10015ea7
sar esi, 1
mov dword [esp + 0x28], ecx
add esi, ebx
mov dword [esp + 0x2c], edx
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_realloc]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], eax
mov eax, dword [edx]
cmp dword [eax + 4], 0
je 0x10016198
sub esi, 2
mov dword [eax + 0xc], esi
mov eax, dword [edx]
mov eax, dword [eax + 4]
jmp 0x10015f16
mov eax, dword [0x10032008]
mov dword [esp], eax
call sym._asmshader_restart
mov eax, dword [0x10032030]
mov ecx, dword [0x10032028]
mov dword [esp + 0x20], 1
mov esi, dword [0x10032020]
lea edx, [ecx + eax*4]
jmp 0x10015f06
mov eax, str.out_of_dynamic_memory_in_yy_get_next_buffer__
call sym._yy_fatal_error
lea esi, [esi]
add eax, 8
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x197
jmp 0x100151b9
add eax, 9
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x191
jmp 0x100151b9
add eax, 0xd
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x193
jmp 0x100151b9
add eax, 7
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x194
jmp 0x100151b9
add eax, 6
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x195
jmp 0x100151b9
add eax, 9
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x198
jmp 0x100151b9
add eax, 9
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x196
jmp 0x100151b9
add eax, 0xc
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x192
jmp 0x100151b9
mov dword [0x10032120], 1
mov eax, 0x19f
jmp 0x100151b9
mov dword [0x10032120], 2
mov eax, 0x19f
jmp 0x100151b9
mov dword [0x10032120], 3
mov eax, 0x19f
jmp 0x100151b9
mov eax, 0x19f
jmp 0x100151b9
mov eax, str.fatal_flex_scanner_internal_error__no_action_found
call sym._yy_fatal_error
mov dword [esp + 4], 0x66
mov dword [esp], ebx
call sym._strchr
test eax, eax
sete al
movzx eax, al
jmp 0x100155c0
mov dword [0x10032120], 0
mov eax, 0x19f
jmp 0x100151b9
add eax, 0xb
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_atoi]
mov dword [0x10032120], eax
mov eax, 0x199
jmp 0x100151b9