Function at 0x6c23d0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
cmp dword [0x748d60], 0
push ebx
push esi
push edi
je 0x6c247a
cmp dword [0x1b98874], 0
mov dword [0x748d60], 0
jne 0x6c2403
mov dword [0x1b98874], 1
mov eax, dword [0x1b98858]
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
test eax, eax
jne 0x6c241e
push 0
call esi
add esp, 4
mov dword [0x1b98858], eax
cmp dword [0x1b9885c], 0
jne 0x6c2438
push 1
call esi
mov dword [0x1b9885c], eax
add esp, 4
mov eax, dword [0x1b98858]
mov ebx, dword [0x1b98864]
test ebx, ebx
jne 0x6c2458
push 0x4000
push eax
call fcn.006c1ea0
mov ebx, eax
add esp, 8
mov dword [0x1b98864], ebx
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 8]
mov dword [0x1b9886c], ecx
mov dword [0x1b98860], eax
mov ecx, dword [ebx]
mov dword [0x1b98858], ecx
mov ecx, eax
mov dword [ebp - 8], eax
mov dl, byte [ecx]
jmp case.0x6c25a9.58
mov dl, byte [0x1b98868]
mov ecx, dword [0x1b98870]
mov esi, ecx
mov byte [ecx], dl
mov edx, dword [0x1b98874]
mov dword [ebp - 8], esi
nop dword [eax]
nop word [eax + eax]
mov edi, 0xf8
nop word [eax + eax]
cmp word [edx*2 + 0x71aa88], 0
movzx eax, byte [esi]
mov bl, byte [eax*4 + 0x71abd8]
je 0x6c24d1
mov dword [0x1b9887c], edx
mov dword [0x1b98880], esi
movsx ecx, word [edx*2 + 0x71b0a8]
movzx eax, bl
add ecx, eax
movsx eax, word [ecx*2 + 0x71b5d0]
cmp eax, edx
je 0x6c2523
nop word [eax + eax]
movsx edx, word [edx*2 + 0x71b210]
cmp edx, 0xa5
jl 0x6c250a
movzx eax, bl
mov bl, byte [eax*4 + 0x71afd8]
movsx ecx, word [edx*2 + 0x71b0a8]
movzx eax, bl
add ecx, eax
movsx eax, word [ecx*2 + 0x71b5d0]
cmp eax, edx
jne 0x6c24f0
movsx ecx, word [edx*2 + 0x71b0a8]
inc esi
movzx eax, bl
add ecx, eax
movsx edx, word [ecx*2 + 0x71b378]
cmp word [edx*2 + 0x71b0a8], di
jne 0x6c24b0
mov ebx, dword [0x1b98864]
mov edi, dword [ebp - 8]
movsx eax, word [edx*2 + 0x71aa88]
test eax, eax
jne 0x6c256f
mov eax, dword [0x1b9887c]
mov esi, dword [0x1b98880]
movsx eax, word [eax*2 + 0x71aa88]
mov ecx, esi
mov dword [0x1b98860], edi
sub ecx, edi
mov dword [0x1b98854], ecx
mov ecx, esi
mov dl, byte [esi]
mov byte [esi], 0
mov edi, dword [0x1b98860]
mov byte [0x1b98868], dl
mov dword [0x1b98870], ecx
nop dword [eax + eax]
cmp eax, 0x3e
ja case.default.0x6c25a9
jmp dword [eax*4 + 0x6c2b44]
mov edi, esi
sub edi, dword [0x1b98860]
dec edi
mov byte [esi], dl
cmp dword [ebx + 0x24], 0
jne 0x6c25d7
mov eax, dword [ebx + 0x10]
mov dword [0x1b9886c], eax
mov eax, dword [0x1b98858]
mov dword [ebx], eax
mov dword [ebx + 0x24], 1
mov eax, dword [ebx + 4]
add eax, dword [0x1b9886c]
cmp ecx, eax
jbe 0x6c267a
call fcn.006c1f40
sub eax, 0
je 0x6c273c
sub eax, 1
jne 0x6c2647
mov dword [0x1b98878], eax
call fcn.004bef30
test eax, eax
je 0x6c2759
mov eax, dword [0x1b98874]
mov edi, dword [0x1b98860]
dec eax
mov ebx, dword [0x1b98864]
mov ecx, edi
cdq
sub eax, edx
mov dl, byte [0x1b98868]
sar eax, 1
add eax, 0x3e
jmp 0x6c2592
mov byte [esi], dl
mov esi, dword [0x1b98880]
mov edx, dword [0x1b9887c]
jmp 0x6c254d
sub eax, 1
jne 0x6c247a
mov ebx, dword [0x1b98864]
mov esi, dword [ebx + 4]
add esi, dword [0x1b9886c]
mov dword [0x1b98870], esi
call fcn.006c2190
mov edi, dword [0x1b98860]
mov edx, eax
mov dword [ebp - 8], edi
jmp 0x6c2550
mov eax, dword [0x1b98860]
mov dword [ebp - 8], eax
lea esi, [eax + edi]
mov dword [0x1b98870], esi
call fcn.006c2190
mov edx, eax
mov byte [ebp - 1], 1
mov edi, edx
cmp word [edx*2 + 0x71aa88], 0
je 0x6c26af
mov dword [0x1b9887c], edx
mov dword [0x1b98880], esi
movsx eax, word [edx*2 + 0x71b0a8]
movsx eax, word [eax*2 + 0x71b5d2]
cmp eax, edx
je 0x6c270c
mov bl, byte [ebp - 1]
nop word [eax + eax]
movsx edi, word [edi*2 + 0x71b210]
cmp edi, 0xa5
jl 0x6c26ea
movzx eax, bl
mov bl, byte [eax*4 + 0x71afd8]
movsx ecx, word [edi*2 + 0x71b0a8]
movzx eax, bl
add ecx, eax
movsx eax, word [ecx*2 + 0x71b5d0]
cmp eax, edi
jne 0x6c26d0
mov byte [ebp - 1], bl
mov ebx, dword [0x1b98864]
movzx eax, byte [ebp - 1]
movsx ecx, word [edi*2 + 0x71b0a8]
add ecx, eax
movsx eax, word [ecx*2 + 0x71b378]
xor ecx, ecx
cmp eax, 0xa4
cmove eax, ecx
test eax, eax
je 0x6c254d
inc esi
mov edx, eax
jmp 0x6c24a0
mov eax, dword [0x1b98860]
mov dword [ebp - 8], eax
lea esi, [eax + edi]
mov dword [0x1b98870], esi
call fcn.006c2190
mov edx, eax
jmp 0x6c24a0
cmp dword [0x1b98878], 0
jne 0x6c247a
push dword [0x1b98858]
call fcn.006c2c40
add esp, 4
jmp 0x6c247a
call fcn.006c2300
cmp al, 0xa
je 0x6c278d
test al, al
jne case.0x6c25a9.55
mov eax, dword [0x748d5c]
inc eax
mov dword [0x748d5c], eax
mov dword [0x1b99898], eax
jmp 0x6c247a
mov bl, 0x20
call fcn.006c2300
mov cl, al
cmp bl, 0x2a
jne 0x6c27b9
cmp cl, 0x2f
je 0x6c247a
cmp cl, 0xa
jne 0x6c27ce
mov eax, dword [0x748d5c]
inc eax
mov dword [0x748d5c], eax
mov dword [0x1b99898], eax
mov bl, cl
jmp 0x6c27a4
mov eax, dword [0x748d5c]
inc eax
mov dword [0x748d5c], eax
mov dword [0x1b99898], eax
jmp case.0x6c25a9.58
push dword [0x1b9885c]
push 1
push dword [0x1b98854]
push edi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add esp, 0x10
jmp 0x6c247a
pop edi
pop esi
mov eax, 0x138
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x139
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x1b98890
sub ecx, edi
mov al, byte [edi]
lea edi, [edi + 1]
mov byte [ecx + edi - 1], al
test al, al
jne 0x6c2823
pop edi
pop esi
mov eax, 0x103
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x1b98890
sub ecx, edi
mov al, byte [edi]
lea edi, [edi + 1]
mov byte [edi + ecx - 1], al
test al, al
jne 0x6c2843
pop edi
pop esi
mov eax, 0x103
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x1b98890
sub ecx, edi
mov al, byte [edi]
lea edi, [edi + 1]
mov byte [edi + ecx - 1], al
test al, al
jne 0x6c2863
pop edi
pop esi
mov eax, 0x104
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x1b98890
sub ecx, edi
mov al, byte [edi]
lea edi, [edi + 1]
mov byte [edi + ecx - 1], al
test al, al
jne 0x6c2883
pop edi
pop esi
mov eax, 0x105
pop ebx
mov esp, ebp
pop ebp
ret
inc edi
mov ecx, 0x1b98890
sub ecx, edi
mov al, byte [edi]
lea edi, [edi + 1]
mov byte [edi + ecx - 1], al
test al, al
jne 0x6c28a4
mov ecx, 0x1b98890
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x6c28c0
sub ecx, edx
pop edi
pop esi
pop ebx
mov byte [ecx + 0x1b9888f], al
mov eax, 0x106
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x10b
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x107
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x108
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x109
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x10a
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x10c
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x10d
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x114
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x10e
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x10f
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x110
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x111
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x112
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x113
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x115
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x1b98890
sub ecx, edi
mov al, byte [edi]
lea edi, [edi + 1]
mov byte [edi + ecx - 1], al
test al, al
jne 0x6c2996
pop edi
pop esi
mov eax, 0x102
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x12e
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x12f
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x130
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x131
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x132
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x120
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x121
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x122
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x123
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x124
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x125
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x133
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x128
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x129
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x12a
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x12b
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x12c
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x12d
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x136
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x137
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x116
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x117
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x118
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x119
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x11a
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x11b
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x11c
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x11e
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x11f
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x127
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x126
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x11d
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push str.fatal_flex_scanner_internal_error__no_action_found
call fcn.006c1f00
nop
xor al, 0x26
insb byte es:[edi], dx
add byte [eax + ebp], al
insb byte es:[edi], dx
add byte [eax], dl
sub byte [eax + eax + 0x1c], ch
sub byte [eax + eax + 0x3c], ch
sub byte [eax + eax + 0x5c], ch
sub byte [eax + eax + 0x7c], ch
sub byte [eax + eax - 0x64], ch
sub byte [eax + eax - 0x25], ch
sub byte [eax + eax - 0x19], ch
sub byte [eax + eax - 0xd], ch
sub byte [eax + eax - 1], ch
sub byte [eax + eax + 0xb], ch
sub dword [eax + eax + 0x17], ebp
sub dword [eax + eax + 0x23], ebp
sub dword [eax + eax + 0x2f], ebp
sub dword [eax + eax + 0x3b], ebp
sub dword [eax + eax + 0x47], ebp
sub dword [eax + eax + 0x53], ebp
sub dword [eax + eax + 0x5f], ebp
sub dword [eax + eax + 0x6b], ebp
sub dword [eax + eax + 0x77], ebp
sub dword [eax + eax - 0x7d], ebp
sub dword [eax + eax - 0x71], ebp
sub dword [eax + eax - 0x51], ebp
sub dword [eax + eax - 0x45], ebp
sub dword [eax + eax - 0x39], ebp
sub dword [eax + eax - 0x2d], ebp
sub dword [eax + eax - 0x21], ebp
sub dword [eax + eax - 0x15], ebp
sub dword [eax + eax - 9], ebp
sub dword [eax + eax + 3], ebp
sub ch, byte [eax + eax + 0xf]
sub ch, byte [eax + eax + 0x1b]
sub ch, byte [eax + eax + 0x27]
sub ch, byte [eax + eax + 0x33]
sub ch, byte [eax + eax + 0x3f]
sub ch, byte [eax + eax + 0x4b]
sub ch, byte [eax + eax + 0x57]
sub ch, byte [eax + eax + 0x63]
sub ch, byte [eax + eax + 0x6f]
sub ch, byte [eax + eax + 0x7b]
sub ch, byte [eax + eax - 0x79]
sub ch, byte [eax + eax - 0x6d]
sub ch, byte [eax + eax - 0x61]
sub ch, byte [eax + eax - 0x55]
sub ch, byte [eax + eax - 0x49]
sub ch, byte [eax + eax - 0x3d]
sub ch, byte [eax + eax - 0x31]
sub ch, byte [eax + eax - 0x25]
sub ch, byte [eax + eax - 0x19]
sub ch, byte [eax + eax - 0xd]
sub ch, byte [eax + eax - 1]
sub ch, byte [eax + eax + 0xb]
sub ebp, dword [eax + eax + 0x17]
sub ebp, dword [eax + eax - 0x80]
daa
insb byte es:[edi], dx
add byte [edx - 0x2dff93d9], ah
daa
insb byte es:[edi], dx
add byte [esi + 0x23006c24], al
sub ebp, dword [eax + eax - 0x19]
daa
insb byte es:[edi], dx
add byte [eax + 0x2f006c25], dh
sub ebp, dword [eax + eax + 0x55]
push ebp