Function at 0x1012d910
Capabilities:
Write file on windows

Disassembly:
push ecx
cmp dword [0x1027a290], 0
push ebx
push ebp
push esi
push edi
je 0x1012d992
cmp dword [0x103b3440], 0
mov dword [0x1027a290], 0
jne 0x1012d93b
mov dword [0x103b3440], 1
cmp dword [0x103b3444], 0
jne 0x1012d94e
call fcn.10171e94
mov dword [0x103b3444], eax
cmp dword [0x103b3448], 0
jne 0x1012d964
call fcn.10171e94
add eax, 0x20
mov dword [0x103b3448], eax
mov ebx, dword [0x103b3438]
test ebx, ebx
jne 0x1012d97b
call fcn.1012e120
mov ebx, eax
mov dword [0x103b3438], ebx
mov edx, dword [ebx]
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebx + 8]
mov dword [0x103b3444], edx
mov dl, byte [ecx]
mov dword [0x1039d630], eax
jmp case.0x1012da99.1
mov dl, byte [0x1029d624]
mov ecx, dword [0x103b343c]
mov ebx, dword [0x103b3438]
mov edi, dword [0x103b3440]
mov esi, ecx
mov byte [ecx], dl
mov dword [esp + 0x10], ecx
movzx eax, byte [esi]
mov dl, byte [eax*4 + 0x10201760]
lea eax, [edi + edi]
cmp word [eax + 0x10201728], 0
je 0x1012d9d5
mov dword [0x1039d638], edi
mov dword [0x1039d628], esi
movsx ebp, word [eax + 0x10201ba8]
movzx ecx, dl
add ebp, ecx
movsx ebp, word [ebp*2 + 0x10201cc8]
cmp ebp, edi
je 0x1012da1e
lea ecx, [ecx]
movsx edi, word [eax + 0x10201bf8]
cmp edi, 0x1c
jl 0x1012da03
mov dl, byte [ecx*4 + 0x10201b60]
lea eax, [edi + edi]
movsx ebp, word [eax + 0x10201ba8]
movzx ecx, dl
add ebp, ecx
movsx ebp, word [ebp*2 + 0x10201cc8]
cmp ebp, edi
jne 0x1012d9f0
movsx ecx, word [edi*2 + 0x10201ba8]
movzx edx, dl
add ecx, edx
movsx edi, word [ecx*2 + 0x10201c48]
inc esi
cmp word [edi*2 + 0x10201ba8], 0x2e
jne 0x1012d9b2
mov ecx, dword [0x1039d638]
mov edx, dword [0x1039d628]
nop
movsx eax, word [edi*2 + 0x10201728]
test eax, eax
jne 0x1012da66
movsx eax, word [ecx*2 + 0x10201728]
mov esi, edx
mov ebp, dword [esp + 0x10]
mov dl, byte [esi]
mov ecx, esi
sub ecx, ebp
mov dword [0x1039d62c], ecx
mov dword [0x1039d63c], ebp
mov byte [0x1029d624], dl
mov byte [esi], 0
mov ecx, esi
mov dword [0x103b343c], ecx
lea ecx, [ecx]
cmp eax, 0xc
ja case.default.0x1012da99
jmp dword [eax*4 + 0x1012dcb0]
mov edi, esi
sub edi, ebp
dec edi
mov byte [esi], dl
cmp dword [ebx + 0x24], 0
jne 0x1012dac4
mov edx, dword [ebx + 0x10]
mov eax, dword [0x103b3444]
mov dword [0x1039d630], edx
mov dword [ebx], eax
mov dword [ebx + 0x24], 1
mov edx, dword [ebx + 4]
add edx, dword [0x1039d630]
cmp ecx, edx
jbe 0x1012db5e
call fcn.1012dcf0
sub eax, 0
je 0x1012db87
sub eax, 1
jne 0x1012db2b
mov ebp, dword [0x1039d63c]
mov ebx, dword [0x103b3438]
mov dword [0x1039d634], eax
mov eax, dword [0x103b3440]
dec eax
cdq
sub eax, edx
mov dl, byte [0x1029d624]
sar eax, 1
mov ecx, ebp
add eax, 0xc
jmp 0x1012da87
mov ecx, dword [0x1039d638]
mov byte [esi], dl
mov edx, dword [0x1039d628]
mov esi, edx
mov edi, ecx
jmp 0x1012da50
sub eax, 1
jne 0x1012d992
mov ebx, dword [0x103b3438]
mov esi, dword [ebx + 4]
add esi, dword [0x1039d630]
mov dword [0x103b343c], esi
call fcn.1012df00
mov edi, eax
mov eax, dword [0x1039d63c]
mov dword [esp + 0x10], eax
jmp 0x1012da43
lea esi, [edi + ebp]
mov dword [0x103b343c], esi
call fcn.1012df00
mov edi, eax
call fcn.1012dfc0
mov dword [esp + 0x10], ebp
test eax, eax
je 0x1012da43
inc esi
mov edi, eax
jmp 0x1012d9b2
mov ebx, dword [0x1039d63c]
lea esi, [ebx + edi]
mov dword [0x103b343c], esi
call fcn.1012df00
mov dword [esp + 0x10], ebx
mov ebx, dword [0x103b3438]
mov edi, eax
jmp 0x1012d9b2
cmp dword [0x103b344c], 0
jne case.0x1012da99.1
cmp dword [0x103b3450], 0
jne case.0x1012da99.1
mov ecx, 0x103a3eb8
mov dword [0x103b3450], 1
sub ecx, ebp
mov al, byte [ebp]
mov byte [ecx + ebp], al
inc ebp
test al, al
jne 0x1012dbd7
pop edi
pop esi
pop ebp
mov eax, 0x102
pop ebx
pop ecx
ret
cmp dword [0x103b344c], 0
jne case.0x1012da99.1
cmp dword [0x103b3450], 0
jne case.0x1012da99.1
inc ebp
mov ecx, 0x103a3eb8
mov dword [0x103b3450], 1
sub ecx, ebp
lea esp, [esp]
mov al, byte [ebp]
mov byte [ecx + ebp], al
inc ebp
test al, al
jne 0x1012dc20
pop edi
pop esi
pop ebp
mov eax, 0x103
pop ebx
pop ecx
ret
cmp dword [0x103b344c], 0
jne case.0x1012da99.1
mov ecx, 0x103a3eb8
mov dword [0x103b3450], 0
sub ecx, ebp
mov al, byte [ebp]
mov byte [ecx + ebp], al
inc ebp
test al, al
jne 0x1012dc54
pop edi
pop esi
pop ebp
mov eax, 0x101
pop ebx
pop ecx
ret
inc dword [0x103b344c]
jmp case.0x1012da99.1
dec dword [0x103b344c]
jmp case.0x1012da99.1
mov ecx, dword [0x103b3448]
mov edx, dword [0x1039d62c]
push ecx
push 1
push edx
push ebp
call fcn.1016ef6a
add esp, 0x10
jmp 0x1012d992
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
pop ecx
ret
mov eax, str.fatal_flex_scanner_internal_error__no_action_found
call fcn.1012e220
add byte [eax], al
adc al, 0xdb
adc dl, byte [eax]
movsb byte es:[edi], byte [esi]
fst dword [edx]
adc byte [ebx + ebx*8 - 0x2412efee], ch
adc dl, byte [eax]
fcom qword ss:[edx]
adc byte [ecx + ebx*8 - 643559406], ah
adc dl, byte [eax]
push 0xffffffffffffffdc
adc dl, byte [eax]
jne 0x1012dcae
adc dl, byte [eax]
movsb byte es:[edi], byte [esi]
fst dword [edx]
adc byte [eax - 0x5fefed24], al
ficom dword [edx]
adc byte [esi - 0x33efed24], bl
int3