Function at 0x1006b470
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, eax
push esi
push ebx
sub esp, 0x4c
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 8]
cmp edx, ecx
je 0x1006b9d0
mov dword [ebp - 0x20], ecx
mov ebx, dword [sym.imp.ucrtbase.dll_malloc]
mov dword [ebp - 0x10], edx
mov dword [esp], 0x600
call ebx
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1006c37a
mov dword [esp], 0x200
call ebx
mov dword [ebp - 0x14], eax
test eax, eax
je 0x1006b9c8
xor ebx, ebx
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x24], pe_nt_image_headers32
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x28], pe_nt_image_headers32
mov dword [ebp - 0x10], ebx
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x20], eax
cmp ecx, edx
je 0x1006b540
movzx eax, word [edx]
cmp ax, 0x29
je 0x1006b920
cmp ax, 0x7c
je 0x1006b54c
cmp ax, 0x28
je 0x1006b878
lea esi, [edx + 2]
mov dword [edi + 0xc], esi
movzx ebx, word [edx]
cmp bx, 0x5e
ja 0x1006b820
cmp bx, 0x23
jbe case.0x1006b531.1
lea eax, [ebx - 0x24]
cmp ax, 0x3a
ja case.0x1006b531.1
movzx eax, ax
jmp dword [eax*4 + 0x10098c28]
mov esi, dword [ebp - 0x18]
cmp dword [ebp - 0x10], esi
jl 0x1006b7c0
mov edx, dword [edi + 0x5c]
xor ecx, ecx
mov eax, edi
call sym._NewRENode.isra.0
mov esi, eax
test eax, eax
je 0x1006b9c8
mov ebx, dword [ebp - 0x24]
cmp dword [ebp - 0x18], ebx
je 0x1006b960
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
lea ebx, [eax + 1]
mov dword [ecx + eax*4], esi
mov esi, dword [edi + 0xc]
cmp dword [edi + 8], esi
je 0x1006c42c
movzx eax, word [esi]
cmp ax, 0x7b
je 0x1006b630
ja 0x1006b698
cmp ax, 0x2b
ja 0x1006b688
cmp ax, 0x29
ja 0x1006b5f0
jne 0x1006b648
mov eax, dword [ebp - 0x10]
lea ecx, [eax - 1]
mov dword [ebp - 0x18], ecx
test eax, eax
je 0x1006b5f0
mov dword [ebp - 0x2c], esi
mov eax, dword [ebp - 0x18]
mov esi, dword [ebp - 0x1c]
lea esi, [esi]
lea edx, [eax + eax*2]
mov edx, dword [esi + edx*4]
lea ecx, [edx - 0x20]
cmp ecx, 2
jbe 0x1006b9f0
cmp edx, 0x1c
je 0x1006b9f0
sub eax, 1
cmp eax, 0xffffffff
jne 0x1006b5c8
nop
lea esi, [esi]
mov dword [esp + 8], 0x100989c8
mov dword [esp + 4], 0x80004005
mov eax, dword [edi]
mov dword [esp], eax
call sym._throw_error
xor eax, eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x1c]
mov ebx, dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], eax
call ebx
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call ebx
mov eax, dword [ebp - 0x10]
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, 1
mov eax, edi
call sym._ParseMinMaxQuantifier
test eax, eax
jns 0x1006bbc0
lea esi, [esi]
mov esi, 0x2f
mov ecx, dword [ebp - 0x28]
cmp dword [ebp - 0x10], ecx
je 0x1006b708
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], ebx
lea eax, [ecx + ecx*2]
add ecx, 1
lea eax, [edx + eax*4]
mov edx, dword [edi + 0xc]
mov dword [ebp - 0x10], ecx
mov dword [eax], esi
mov esi, dword [ebp - 0x20]
mov dword [eax + 4], edx
mov ecx, dword [edi + 8]
mov dword [eax + 8], esi
jmp 0x1006b4dd
cmp ax, 0x3f
je 0x1006b5f0
jmp 0x1006b648
cmp ax, 0x7c
jne 0x1006b648
mov ecx, dword [ebp - 0x10]
add esi, 2
mov dword [edi + 0xc], esi
test ecx, ecx
je 0x1006b6f3
mov esi, dword [ebp - 0x1c]
lea eax, [ecx + ecx*2]
mov dword [ebp - 0x18], edi
mov edi, ecx
lea esi, [esi + eax*4 - 0xc]
jmp 0x1006b6e8
mov dword [esp], ebx
mov ecx, dword [ebp - 0x14]
mov edx, 0x2f
sub edi, 1
mov eax, dword [ebp - 0x18]
call sym._ProcessOp.isra.0
test eax, eax
je 0x1006b60c
sub ebx, 1
sub esi, 0xc
test edi, edi
je 0x1006b6ed
cmp dword [esi], 0x2f
je 0x1006b6c0
mov dword [ebp - 0x10], edi
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x28]
mov esi, 0x17
cmp dword [ebp - 0x10], ecx
jne 0x1006b659
lea esi, [esi]
mov ecx, dword [ebp - 0x10]
lea eax, [ecx + ecx]
mov dword [ebp - 0x28], eax
lea eax, [eax + ecx*4]
shl eax, 2
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_realloc]
test eax, eax
je 0x1006b9c8
mov dword [ebp - 0x1c], eax
jmp 0x1006b659
lea ecx, [edx - 0x21]
cmp ecx, 1
ja 0x1006ba30
mov dword [ebp - 0x10], ebx
mov ebx, eax
mov eax, dword [edi + 0x5c]
mov ecx, edx
mov edx, eax
mov eax, edi
call sym._NewRENode.isra.0
test eax, eax
je 0x1006b9c8
mov edx, dword [esi + 8]
mov dword [eax + 0xc], edx
test ebx, ebx
je 0x1006c40f
mov esi, dword [ebp - 0x14]
lea esi, [esi + ebx*4 - 4]
mov edx, dword [esi]
mov dword [eax + 8], edx
mov edx, dword [edi + 0x18]
mov dword [esi], eax
cmp edx, 0xaaaaa
je 0x1006b5f0
add edx, 1
mov dword [edi + 0x18], edx
mov dword [edi + 0x20], eax
mov eax, edi
call sym._ParseQuantifier
test eax, eax
je 0x1006b60c
mov eax, dword [edi + 0x20]
mov dword [esi], eax
mov esi, dword [edi + 0xc]
cmp esi, dword [edi + 8]
jne 0x1006b586
nop
lea esi, [esi]
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x1006b7fb
mov esi, dword [ebp - 0x18]
lea esi, [esi]
mov ecx, dword [ebp - 0x1c]
sub ebx, 1
lea eax, [ebx + ebx*2]
mov edx, dword [ecx + eax*4]
mov ecx, dword [ebp - 0x14]
mov dword [esp], esi
mov eax, edi
call sym._ProcessOp.isra.0
test eax, eax
je 0x1006b60c
sub esi, 1
test ebx, ebx
jne 0x1006b7d0
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], 1
jne 0x1006c3f2
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov dword [edi + 0x20], eax
mov eax, 1
jmp 0x1006b60c
cmp bx, 0x7b
jne case.0x1006b531.1
mov dword [edi + 0xc], edx
mov eax, edi
mov edx, 1
call sym._ParseMinMaxQuantifier
mov dword [edi + 0xc], esi
test eax, eax
js case.0x1006b531.1
mov edx, dword [edi]
xor eax, eax
cmp dword [edx + 0x28], 0x101
mov dword [esp + 8], 0x100989c8
seta al
mov dword [esp], edx
sub eax, 0x7ff5ec67
mov dword [esp + 4], eax
call sym._throw_error
xor eax, eax
jmp 0x1006b60c
lea eax, [edx + 2]
mov dword [edi + 0xc], eax
lea eax, [edx + 4]
cmp ecx, eax
jbe 0x1006b8d0
cmp word [edx + 2], 0x3f
jne 0x1006b8d0
movzx eax, word [edx + 4]
lea ecx, [eax - 0x21]
cmp cx, 0x1c
ja 0x1006b8d0
mov ebx, 0x12000001
bt ebx, ecx
jae 0x1006b8d0
cmp ax, 0x21
je 0x1006be10
mov esi, 0x20
cmp ax, 0x3d
je 0x1006bb88
add edx, 6
mov ebx, dword [ebp - 0x18]
mov dword [edi + 0xc], edx
jmp 0x1006b64d
mov eax, dword [ebp - 0x20]
mov edx, 1
shr eax, 7
je 0x1006be1e
lea esi, [esi]
mov ecx, edx
add edx, 1
shr eax, 7
jne 0x1006b8e8
lea eax, [ecx + ecx + 4]
add dword [edi + 0x1c], eax
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [edi + 0x10], eax
cmp eax, 0xffff
je 0x1006b5f0
mov ebx, dword [ebp - 0x18]
mov esi, 0x1c
jmp 0x1006b64d
mov esi, dword [ebp - 0x10]
lea eax, [esi - 1]
test esi, esi
je 0x1006b5f0
mov ebx, dword [ebp - 0x1c]
lea esi, [esi]
lea edx, [eax + eax*2]
mov edx, dword [ebx + edx*4]
lea ecx, [edx - 0x20]
cmp ecx, 2
jbe 0x1006b54c
cmp edx, 0x1c
je 0x1006b54c
sub eax, 1
cmp eax, 0xffffffff
jne 0x1006b938
jmp 0x1006b5f0
mov eax, dword [ebp - 0x18]
lea ebx, [eax + eax]
shl eax, 3
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], ebx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_realloc]
test eax, eax
je 0x1006b9c8
mov dword [ebp - 0x14], eax
jmp 0x1006b56e
mov edx, dword [edi + 0x5c]
mov ecx, 0xd
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
test eax, eax
je 0x1006b9c8
mov word [eax + 0xc], bx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x10], 1
mov eax, dword [edi + 0xc]
mov edx, dword [edi + 0x20]
sub eax, 2
mov dword [edx + 8], eax
add dword [edi + 0x1c], 3
jmp 0x1006bac6
xor eax, eax
jmp 0x1006b60c
mov edx, dword [eax + 0x5c]
xor ecx, ecx
call sym._NewRENode.isra.0
test eax, eax
mov dword [edi + 0x20], eax
setne al
add esp, 0x4c
pop ebx
movzx eax, al
pop esi
pop edi
pop ebp
ret
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
add esi, 2
lea eax, [eax + eax*2]
mov dword [edi + 0xc], esi
mov esi, dword [ebp - 0x1c]
lea esi, [esi + eax*4]
mov eax, dword [ebp - 0x10]
sub ebx, eax
mov dword [ebp - 0x10], ebx
mov ebx, eax
mov eax, dword [ebp - 0x10]
mov edx, dword [esi]
add eax, ebx
sub ebx, 1
mov dword [ebp - 0x18], eax
cmp edx, 0x20
je 0x1006ba70
ja 0x1006b740
cmp edx, 0x1c
je 0x1006b74c
mov dword [esp], eax
mov ecx, dword [ebp - 0x14]
mov eax, edi
call sym._ProcessOp.isra.0
test eax, eax
je 0x1006b60c
sub esi, 0xc
test ebx, ebx
jne 0x1006ba0f
mov dword [esp + 8], 0x721
mov dword [esp + 4], str._home_runner_build_wine_wine_dlls_jscript_regexp.c
mov dword [esp], str.operatorSP
call dword [sym.imp.ucrtbase.dll__assert]
lea esi, [esi]
mov dword [ebp - 0x10], ebx
mov ebx, eax
mov eax, dword [ebp - 0x14]
lea esi, [eax + ebx*4 - 4]
mov eax, dword [esi]
jmp 0x1006b798
mov edx, dword [edi + 0x5c]
mov ecx, 2
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
mov esi, eax
test eax, eax
je 0x1006b9c8
add dword [edi + 0x1c], 1
jmp 0x1006b562
mov edx, dword [edi + 0x5c]
mov ecx, 5
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
test eax, eax
je 0x1006b9c8
add dword [edi + 0x1c], 1
mov eax, edi
call sym._ParseQuantifier
test eax, eax
je 0x1006b60c
mov esi, dword [edi + 0x20]
jmp 0x1006b562
mov edx, dword [edi + 0x5c]
mov ecx, 0x15
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
test eax, eax
je 0x1006b9c8
mov ebx, dword [edi + 0xc]
mov edx, ebx
sub edx, dword [edi + 4]
sar edx, 1
mov dword [eax + 0xc], edx
mov eax, dword [edi + 0xc]
mov esi, dword [edi + 8]
cmp esi, eax
jne 0x1006bb30
jmp 0x1006b5f0
cmp dx, 0x5d
je 0x1006be28
add eax, 2
mov dword [edi + 0xc], eax
cmp eax, esi
je 0x1006b5f0
movzx edx, word [eax]
cmp dx, 0x5c
jne 0x1006bb18
lea edx, [eax + 2]
cmp edx, esi
je 0x1006bbc0
add eax, 4
mov dword [edi + 0xc], eax
jmp 0x1006bb28
cmp esi, ecx
jae 0x1006b5f0
lea eax, [edx + 4]
mov dword [ebp - 0x2c], eax
mov dword [edi + 0xc], eax
movzx eax, word [edx + 2]
mov word [ebp - 0x30], ax
sub eax, 0x30
cmp ax, 0x48
ja case.0x1006bb71.10
movzx eax, ax
jmp dword [eax*4 + 0x10098d14]
mov edx, dword [edi + 0x5c]
mov ecx, 1
jmp 0x1006ba8b
add dword [edi + 0x1c], 4
mov esi, 0x21
jmp 0x1006b8bc
mov edx, dword [edi + 0x5c]
mov ecx, 0xd
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
test eax, eax
je 0x1006b9c8
movzx esi, word [ebp - 0x30]
mov word [eax + 0xc], si
jmp 0x1006b9a2
mov dword [edi + 0xc], esi
jmp 0x1006b5f0
movzx eax, word [ebp - 0x30]
mov edx, dword [ebp - 0x20]
mov dword [esp], edi
mov ecx, sym._FindParenCount
call sym._GetDecimalValue
test byte [edi + 0x59], 0x40
jne 0x1006b9c8
cmp eax, 0xffffffff
je 0x1006c38d
lea ebx, [eax - 1]
cmp ebx, 0xffff
ja 0x1006c3af
mov edx, dword [edi + 0x5c]
mov ecx, 0xc
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
test eax, eax
je 0x1006b9c8
mov dword [eax + 0xc], ebx
mov eax, dword [edi + 0x20]
mov edx, 1
mov eax, dword [eax + 0xc]
shr eax, 7
je 0x1006bc33
add edx, 1
shr eax, 7
jne 0x1006bc2b
mov eax, dword [edi + 0x1c]
lea eax, [edx + eax + 1]
mov dword [edi + 0x1c], eax
jmp 0x1006bac6
mov edx, dword [edi + 0x5c]
mov ecx, 4
jmp 0x1006ba8b
test byte [0x1008a2c0], 4
jne 0x1006c341
mov eax, dword [ebp - 0x2c]
xor ebx, ebx
jmp 0x1006bc83
movzx edx, word [eax]
lea esi, [edx - 0x30]
cmp si, 7
ja 0x1006bc87
add eax, 2
lea edx, [edx + ebx*8 - 0x30]
mov dword [edi + 0xc], eax
cmp edx, 0xff
ja 0x1006bc87
mov ebx, edx
cmp ecx, eax
ja 0x1006bc63
mov edx, dword [edi + 0x5c]
mov ecx, 0xd
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
test eax, eax
je 0x1006b9c8
mov word [eax + 0xc], bx
mov eax, dword [edi + 0x20]
mov dword [eax + 0x10], 1
add dword [edi + 0x1c], 3
jmp 0x1006bac6
mov edx, dword [edi + 0x5c]
mov ecx, 8
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
jmp 0x1006baba
mov ebx, 0xb
jmp 0x1006bc87
mov ebx, 9
jmp 0x1006bc87
mov edx, dword [edi + 0x5c]
mov ecx, 0xa
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
jmp 0x1006baba
mov ebx, 0xd
jmp 0x1006bc87
mov edx, dword [edi + 0x5c]
mov ecx, 6
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
jmp 0x1006baba
cmp dword [ebp - 0x2c], ecx
jae 0x1006c332
movzx eax, word [edx + 4]
and eax, 0xffffffdf
sub eax, 0x41
cmp ax, 0x19
ja 0x1006c332
lea eax, [edx + 6]
mov dword [edi + 0xc], eax
movzx ebx, word [edx + 4]
and ebx, 0x1f
jmp 0x1006bc87
mov edx, dword [edi + 0x5c]
mov ecx, 3
jmp 0x1006ba8b
mov edx, dword [edi + 0x5c]
mov ecx, 0xb
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
jmp 0x1006baba
mov edx, dword [edi + 0x5c]
mov ecx, 7
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
jmp 0x1006baba
mov edx, dword [edi + 0x5c]
mov ecx, 9
mov eax, edi
call sym._NewRENode.isra.0
mov dword [edi + 0x20], eax
jmp 0x1006baba
mov dword [ebp - 0x30], 4
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x2c]
xor esi, esi
xor ebx, ebx
cmp dword [ebp - 0x34], ecx
jbe 0x1006bc87
add ecx, 2
mov dword [edi + 0xc], ecx
movzx eax, word [ecx - 2]
cmp ax, 0x2f
jbe 0x1006bdd8
cmp eax, 0x39
jbe 0x1006c2f2
or eax, 0x20
movzx eax, ax
lea edx, [eax - 0x61]
cmp edx, 5
jbe 0x1006c32d
mov eax, 0x7ffffffe
sub eax, esi
lea eax, [ecx + eax*2]
lea edx, [eax + 2]
mov dword [edi + 0xc], edx
movzx ebx, word [eax]
jmp 0x1006bc87
mov ebx, 0xc
jmp 0x1006bc87
mov ebx, 0xa
jmp 0x1006bc87
mov dword [ebp - 0x30], 2
jmp 0x1006bd9a
add dword [edi + 0x1c], 4
mov esi, 0x22
jmp 0x1006b8bc
mov eax, 4
jmp 0x1006b8f6
mov edx, dword [edi + 0x20]
sub eax, ebx
mov dword [ebp - 0x30], edi
lea esi, [edi + 0x28]
sar eax, 1
mov dword [edx + 0x10], eax
mov eax, dword [edi + 0x20]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov edi, eax
mov ecx, dword [esi]
test ecx, ecx
je 0x1006c30b
mov eax, dword [ebp - 0x2c]
mov edx, dword [esi + 4]
cmp edx, dword [eax + 0x10]
je 0x1006c235
add edi, 1
add esi, 0xc
cmp edi, 4
jne 0x1006be42
mov edi, dword [ebp - 0x30]
mov eax, dword [edi + 0x14]
mov esi, dword [ebp - 0x2c]
lea edx, [eax + 1]
mov dword [edi + 0x14], edx
mov dword [esi + 0x14], eax
mov esi, dword [edi + 0xc]
xor edx, edx
lea eax, [esi + 2]
mov dword [ebp - 0x3c], esi
mov dword [edi + 0xc], eax
mov eax, dword [edi + 0x20]
mov dword [ebp - 0x48], eax
mov word [eax + 0x18], dx
mov byte [eax + 0x1a], 1
cmp ebx, esi
je 0x1006c1b6
movzx esi, word [ebx]
cmp si, 0x5e
je 0x1006c26d
xor eax, eax
mov dword [ebp - 0x38], 0
xor ecx, ecx
mov word [ebp - 0x42], ax
mov dword [ebp - 0x40], edi
nop
lea esi, [esi]
lea eax, [ebx + 2]
mov dword [ebp - 0x30], eax
cmp si, 0x5c
je 0x1006bf70
movzx edi, si
test ecx, ecx
jne 0x1006c1a0
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x30]
sub eax, 2
cmp esi, eax
jae 0x1006bef2
cmp word [esi], 0x2d
je 0x1006c222
mov eax, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x30]
test byte [eax + 0x58], 1
je 0x1006bf4f
movzx esi, di
mov edx, edi
cmp edi, esi
jb 0x1006c217
mov word [ebp - 0x42], di
mov dword [ebp - 0x34], edi
mov edi, edx
lea esi, [esi]
movzx ecx, si
mov dword [esp], ecx
mov dword [ebp - 0x2c], ecx
call dword [sym.imp.ucrtbase.dll_towupper]
mov ecx, dword [ebp - 0x2c]
mov ebx, eax
mov dword [esp], ecx
call dword [sym.imp.ucrtbase.dll_towlower]
cmp bx, ax
cmovb ebx, eax
cmp di, bx
cmovb edi, ebx
add esi, 1
cmp esi, dword [ebp - 0x34]
jbe 0x1006bf18
mov ebx, dword [ebp - 0x30]
movzx edi, di
mov eax, dword [ebp - 0x38]
cmp eax, edi
cmovae edi, eax
xor ecx, ecx
mov dword [ebp - 0x38], edi
cmp dword [ebp - 0x3c], ebx
je 0x1006c1a8
movzx esi, word [ebx]
jmp 0x1006bec0
movzx edx, word [ebx + 2]
lea esi, [ebx + 4]
lea eax, [edx - 0x30]
cmp ax, 0x48
ja case.0x1006bf83.8
movzx eax, ax
jmp dword [eax*4 + 0x10098e38]
movzx edi, dx
test ecx, ecx
je 0x1006c069
mov ebx, esi
lea esi, [esi]
movzx esi, word [ebp - 0x42]
cmp esi, edi
ja 0x1006c28b
mov eax, dword [ebp - 0x40]
test byte [eax + 0x58], 1
je 0x1006bf4f
mov dword [ebp - 0x30], ebx
mov edx, edi
jmp 0x1006bf0f
lea edi, [edx - 0x30]
movzx edx, word [ebx + 4]
lea eax, [edx - 0x30]
cmp ax, 7
ja 0x1006c061
lea edi, [edx + edi*8 - 0x30]
movzx edx, word [ebx + 6]
lea eax, [ebx + 6]
mov dword [ebp - 0x30], eax
lea eax, [edx - 0x30]
cmp ax, 7
ja 0x1006c198
lea eax, [edx + edi*8 - 0x30]
cmp eax, 0xff
ja 0x1006c198
add ebx, 8
test ecx, ecx
jne 0x1006c373
mov dword [ebp - 0x30], ebx
mov edi, eax
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c28b
mov dword [ebp - 0x38], 0xffff
xor edi, edi
mov eax, dword [ebp - 0x40]
mov ebx, esi
test byte [eax + 0x58], 1
je 0x1006bf4f
mov dword [ebp - 0x30], esi
mov edx, edi
mov esi, edi
mov word [ebp - 0x42], di
jmp 0x1006bf0f
lea eax, [edx - 0x30]
shl edi, 4
add ebx, 1
or edi, eax
cmp ebx, dword [ebp - 0x2c]
jae 0x1006c061
cmp dword [ebp - 0x3c], esi
ja 0x1006c14c
test ecx, ecx
jne 0x1006bf9b
mov dword [ebp - 0x30], esi
jmp 0x1006bedb
cmp dword [ebp - 0x3c], esi
jbe 0x1006c1fd
movzx edx, word [ebx + 4]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp ax, 0x19
ja 0x1006c1fd
mov edi, edx
add ebx, 6
and edi, 0x1f
test ecx, ecx
jne 0x1006bfa0
mov dword [ebp - 0x30], ebx
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c2cf
mov dword [ebp - 0x30], esi
mov edi, 8
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c29f
mov dword [ebp - 0x30], esi
mov edi, 0xb
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c293
mov dword [ebp - 0x30], esi
mov edi, 0xd
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c2b7
mov dword [ebp - 0x30], esi
mov edi, 9
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c2ab
mov dword [ebp - 0x30], esi
mov edi, 0xc
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c2c3
mov dword [ebp - 0x30], esi
mov edi, 0xa
jmp 0x1006bedb
test ecx, ecx
jne 0x1006c28b
mov edi, 0x39
jmp 0x1006c029
mov dword [ebp - 0x2c], 4
cmp dword [ebp - 0x3c], esi
jbe 0x1006c33a
xor ebx, ebx
xor edi, edi
movzx edx, word [esi]
add esi, 2
mov eax, edx
cmp dx, 0x2f
jbe 0x1006c175
cmp edx, 0x39
jbe 0x1006c048
or eax, 0x20
movzx eax, ax
lea edx, [eax - 0x61]
cmp edx, 5
jbe 0x1006c265
not ebx
lea ebx, [esi + ebx*2]
test ecx, ecx
jne 0x1006c20d
mov dword [ebp - 0x30], ebx
mov edi, 0x5c
jmp 0x1006bedb
mov dword [ebp - 0x2c], 2
jmp 0x1006c13f
test ecx, ecx
je 0x1006bedb
mov ebx, dword [ebp - 0x30]
jmp 0x1006bfa0
mov edi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x48]
movzx esi, word [ebp - 0x38]
mov word [eax + 0x18], si
mov edx, dword [edi + 0x20]
mov ecx, dword [edi + 0x24]
mov eax, 0x1000000
movzx ebx, word [edx + 0x18]
sub eax, ecx
shr bx, 3
movzx ebx, bx
add ebx, 1
cmp ebx, eax
ja 0x1006b5f0
add ecx, ebx
mov dword [edi + 0x24], ecx
mov eax, dword [edx + 0x14]
mov edx, 1
shr eax, 7
je 0x1006bc33
nop
add edx, 1
shr eax, 7
jne 0x1006c1f0
jmp 0x1006bc33
mov edi, 0x5c
test ecx, ecx
je 0x1006bedb
mov ebx, dword [ebp - 0x30]
mov edi, 0x5c
jmp 0x1006bfa0
mov word [ebp - 0x42], dx
mov edi, esi
jmp 0x1006bf4f
mov ebx, esi
mov word [ebp - 0x42], di
mov ecx, 1
add ebx, 2
jmp 0x1006bf5c
test edx, edx
je 0x1006c2db
mov dword [ebp - 0x34], esi
xor eax, eax
jmp 0x1006c253
add eax, 1
cmp edx, eax
je 0x1006c2db
movzx esi, word [ebx + eax*2]
cmp word [ecx + eax*2], si
je 0x1006c248
mov esi, dword [ebp - 0x34]
jmp 0x1006be5b
sub eax, 0x57
jmp 0x1006c04b
mov esi, dword [ebp - 0x48]
lea eax, [ebx + 2]
mov byte [esi + 0x1a], 0
cmp dword [ebp - 0x3c], eax
je 0x1006c381
movzx esi, word [ebx + 2]
mov ebx, eax
jmp 0x1006bea9
mov edi, dword [ebp - 0x40]
jmp 0x1006b5f0
mov ebx, esi
mov edi, 0xd
jmp 0x1006bfa0
mov ebx, esi
mov edi, 0xb
jmp 0x1006bfa0
mov ebx, esi
mov edi, 0xc
jmp 0x1006bfa0
mov ebx, esi
mov edi, 9
jmp 0x1006bfa0
mov ebx, esi
mov edi, 0xa
jmp 0x1006bfa0
mov ebx, esi
mov edi, 8
jmp 0x1006bfa0
mov eax, edi
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
lea eax, [eax + eax*2]
mov eax, dword [edi + eax*4 + 0x30]
mov dword [esi + 0x14], eax
jmp 0x1006be78
sub eax, 0x30
shl ebx, 4
add esi, 1
or ebx, eax
cmp esi, dword [ebp - 0x30]
jne 0x1006bda4
jmp 0x1006bc87
mov eax, edi
mov edi, dword [ebp - 0x30]
lea eax, [eax + eax*2]
lea edx, [edi + eax*4]
mov eax, dword [ebp - 0x2c]
mov dword [edx + 0x28], ebx
mov eax, dword [eax + 0x10]
mov dword [edx + 0x2c], eax
mov eax, dword [edi + 0x14]
mov dword [edx + 0x30], eax
jmp 0x1006be6c
sub eax, 0x57
jmp 0x1006c2f5
mov dword [edi + 0xc], esi
jmp 0x1006bc87
xor edi, edi
jmp 0x1006c061
mov dword [esp + 0xc], str.non_octal_digit_in_an_escape_sequence_that_doesnt_match_a_back_reference_n
mov dword [esp + 8], str.ParseTerm
mov dword [esp + 4], 0x1008a2c0
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0_20
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 8]
mov dword [ebp - 0x2c], eax
jmp 0x1006bc5c
mov edi, eax
jmp 0x1006bfa0
xor eax, eax
jmp 0x1006b628
mov dword [ebp - 0x38], 0
jmp 0x1006c1ab
test byte [0x1008a2c0], 4
jne 0x1006c3cc
cmp word [ebp - 0x30], 0x37
mov dword [edi + 0xc], esi
ja case.0x1006b531.1
mov dword [ebp - 0x2c], esi
mov ecx, dword [edi + 8]
jmp 0x1006bc5c
mov dword [esp + 8], 0x59f
mov dword [esp + 4], str._home_runner_build_wine_wine_dlls_jscript_regexp.c
mov dword [esp], str.1___num__num___0x10000
call dword [sym.imp.ucrtbase.dll__assert]
mov dword [esp + 0xc], str.back_reference_exceeds_number_of_capturing_parentheses_n
mov dword [esp + 8], str.ParseTerm
mov dword [esp + 4], 0x1008a2c0
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0_20
jmp 0x1006c396
mov dword [esp + 8], 0x6f6
mov dword [esp + 4], str._home_runner_build_wine_wine_dlls_jscript_regexp.c
mov dword [esp], str.operandSP__1
call dword [sym.imp.ucrtbase.dll__assert]
mov dword [esp + 8], 0x72c
mov dword [esp + 4], str._home_runner_build_wine_wine_dlls_jscript_regexp.c
mov dword [esp], str.operandSP
call dword [sym.imp.ucrtbase.dll__assert]
mov eax, ebx
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
jmp 0x1006b7c3