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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x3044
call fcn.004925b0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx + 8]
push ebx
xor ebx, ebx
push esi
xor eax, eax
push edi
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x28], ecx
lea esp, [esp]
cmp ecx, ebx
je 0x422869
cmp dword [ecx], ebx
je 0x422869
mov edx, dword [ebp - 0xc]
mov esi, ecx
mov dword [ebp - 0x20], esi
cmp edx, dword [ecx]
jb 0x422880
jmp 0x42379d
mov ecx, dword [ebp - 0xc]
xor esi, esi
cmp byte [ecx], 0
mov dword [ebp - 0x20], esi
je 0x423d1d
lea ebx, [ebx]
cmp eax, 0x1ff
jg 0x4247b4
mov ecx, dword [ebp - 0xc]
mov edi, edi
mov dl, byte [ecx]
cmp dl, 0x20
je 0x42289c
cmp dl, 9
jne 0x42289f
inc ecx
jmp 0x422890
cmp byte [ecx], 0
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc], ecx
je 0x423795
cmp esi, ebx
je 0x4228ba
cmp ecx, dword [esi]
jae 0x423795
shl eax, 4
lea esi, [ebp + eax - 0x2840]
mov dword [esi], 0
mov dl, byte [ecx]
movsx ebx, byte [ecx + 1]
mov byte [ebp - 0x19], dl
movsx edx, dl
lea edi, [ecx + 1]
add edx, 0xffffffdf
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], edi
cmp edx, 0x5d
ja case.0x4228f2.35
movzx edx, byte [edx + 0x424834]
jmp dword [edx*4 + 0x4247d8]
cmp ebx, 0x3d
jne 0x422919
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x14
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x422967
cmp dword [ebp + eax - 0x2848], 0xf
jge 0x422967
cmp ebx, 0x2b
jne 0x422949
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 9
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x31
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x2b
jne 0x422987
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x3c
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
dec dword [ebp - 4]
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x4229c1
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x15
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x422a0f
cmp dword [ebp + eax - 0x2848], 0xf
jge 0x422a0f
cmp ebx, 0x2d
jne 0x4229f1
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0xa
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x32
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x2d
jne 0x422a2f
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x3d
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov dword [esi + 8], 0x36
cmp ebx, 0x30
jl 0x422a40
cmp ebx, 0x39
jle 0x422a49
cmp ebx, 0x2e
jne 0x42355d
mov ebx, dword [ebp - 0x10]
movsx eax, byte [ebx + 2]
add ebx, 2
push eax
push str.__t____:_______
mov dword [ebp - 8], ebx
call fcn.00486dd1
add esp, 8
test eax, eax
jne 0x422a82
movsx eax, byte [ebx + 1]
inc ebx
push eax
push str.__t____:_______
call fcn.00486dd1
add esp, 8
test eax, eax
je 0x422a68
mov dword [ebp - 8], ebx
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x422a94
cmp ebx, dword [eax]
jae 0x42355d
mov ebx, dword [ebp - 8]
mov ecx, ebx
mov al, byte [ecx]
cmp al, 0x20
je 0x422aa0
cmp al, 9
jne 0x422aa3
inc ecx
jmp 0x422a96
cmp byte [ecx], 0x2a
jne 0x422ab5
cmp byte [ecx + 1], 0x2a
je 0x42355d
mov ebx, dword [ebp - 8]
mov bl, byte [ebx]
cmp bl, 0x2d
je 0x422ac5
cmp bl, 0x2b
jne 0x422b5f
mov eax, dword [ebp - 8]
movzx ebx, byte [eax - 1]
test ebx, 0xffffff80
jne 0x422ae6
push 2
push ebx
call fcn.0048731e
add esp, 8
test eax, eax
je 0x422ae6
and ebx, 0xffffffdf
cmp bl, 0x45
jne 0x422b5f
mov ecx, dword [ebp - 0x10]
cmp byte [ecx], 0x30
jne 0x422b15
movzx ebx, byte [edi]
test ebx, 0xffffff80
jne 0x422b10
push 2
push ebx
call fcn.0048731e
add esp, 8
test eax, eax
je 0x422b10
and ebx, 0xffffffdf
cmp bl, 0x58
je 0x422b5f
mov eax, dword [ebp - 0x10]
cmp byte [eax], 0x2d
mov ecx, dword [ebp - 8]
jne 0x422b50
cmp byte [edi], 0x30
jne 0x422b50
movzx edi, byte [eax + 2]
test edi, 0xffffff80
jne 0x422b43
push 2
push edi
call fcn.0048731e
add esp, 8
test eax, eax
je 0x422b43
and edi, 0xffffffdf
mov eax, edi
cmp al, 0x58
je 0x422b5f
mov ecx, dword [ebp - 8]
lea esp, [esp]
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
jl 0x422b5c
cmp al, 0x39
jle 0x422b50
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 4]
test eax, eax
je 0x422b89
mov edx, dword [ebp - 0x18]
cmp dword [ebp + edx - 0x2848], 0xf
jge 0x422b89
cmp eax, 0x1fe
jg 0x4247b4
inc eax
mov dword [esi + 8], 0x2b
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x10]
shl eax, 4
mov dword [ebp + eax - 0x2838], 5
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 8]
sub eax, ecx
cmp byte [ecx], 0
mov ebx, eax
je 0x423768
cmp eax, 0xffffffff
jne 0x422bc2
mov eax, ecx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x422bb7
sub eax, edx
mov ebx, eax
lea esi, [ebx + 1]
lea eax, [esi - 1]
cmp eax, 0x7fff
ja 0x422c29
cmp dword [0x4ad23c], 0
jne 0x422be6
call fcn.00470410
mov dword [0x4ad23c], eax
test eax, eax
je 0x422c29
mov ecx, dword [0x4ad240]
cmp esi, dword [ecx + 8]
jbe 0x422c03
call fcn.00470410
mov ecx, dword [0x4ad240]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x422c29
mov edi, dword [ecx + 4]
mov eax, esi
and eax, 3
mov dword [0x4ad244], edi
je 0x422c18
sub esi, eax
add esi, 4
sub dword [ecx + 8], esi
lea edx, [esi + edi]
mov dword [ecx + 4], edx
test edi, edi
jne 0x423750
mov eax, dword [ebp - 0x10]
push eax
push str.Out_of_memory.
mov ecx, 0x4ad2f8
call fcn.0042e0b0
xor edi, edi
jmp 0x42376d
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x12
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x422c81
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x17
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x2f
jne 0x422cc5
cmp byte [ecx + 2], 0x3d
jne 0x422caa
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
lea edi, [ecx + 2]
inc edi
mov dword [esi + 8], 0x18
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x35
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x34
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x422d03
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x16
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x2a
jne 0x422d23
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x3b
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x422d38
cmp dword [ebp + eax - 0x2848], 0xf
mov eax, 0x33
jl 0x422d3d
mov eax, 0x3a
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
inc edi
mov dword [esi + 8], eax
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x422d77
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x26
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x37
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x422dd5
cmp dword [ebp + eax - 0x2848], 0xf
jge 0x422dd5
mov eax, dword [ebp - 0x10]
movsx eax, byte [eax - 1]
push eax
push str.__t__
call fcn.00486dd1
add esp, 8
test eax, eax
je 0x422dd5
cmp dword [ebp - 4], 0x1fe
jg 0x4247b4
inc dword [ebp - 4]
mov dword [esi + 8], 0x2b
mov ecx, dword [ebp - 4]
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x20]
add ecx, ecx
inc edi
mov dword [ebp + ecx*8 - 0x2838], 0xf
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0xc
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x422e6c
cmp dword [ebp + eax - 0x2848], 0xb
jne 0x422e6c
lea ebx, [ebx]
mov al, byte [edi]
cmp al, 0x20
je 0x422e3a
cmp al, 9
jne 0x422e3d
inc edi
jmp 0x422e30
cmp byte [edi], 0x5d
je 0x422e6c
dec dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x20]
add ecx, ecx
inc edi
mov dword [ebp + ecx*8 - 0x2838], 0x10
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov eax, 0xc
call fcn.004703a0
mov edi, eax
test edi, edi
je 0x423cbf
cmp dword [ebp - 4], 0
je 0x422ea0
mov edx, dword [ebp - 0x18]
cmp dword [ebp + edx - 0x2848], 0xf
jge 0x422ea0
mov dword [edi + 4], 0x4a8a58
mov byte [edi + 9], 1
jmp 0x422eba
push 0
push 0
push str.Array
mov ecx, 0x4ad2f8
call fcn.0041f960
mov dword [edi + 4], eax
mov byte [edi + 9], 0
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 4]
inc dword [ebp - 4]
mov dword [edi], eax
mov eax, dword [ebp - 4]
mov byte [edi + 8], 1
mov dword [esi], edi
mov edi, dword [ebp - 0xc]
mov esi, dword [ebp - 0x20]
add ecx, ecx
inc edi
mov dword [ebp + ecx*8 - 0x2838], 0x10
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0xd
mov dword [esi + 4], ecx
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x422f21
cmp dword [ebp + eax - 0x2848], 0xf
jl 0x423cd0
mov eax, 0xc
call fcn.004703a0
mov ebx, eax
test ebx, ebx
je 0x423cbf
push 0
push 0
push str.Object
mov ecx, 0x4ad2f8
call fcn.0041f960
mov edi, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
inc dword [ebp - 4]
mov dword [ebx + 4], eax
mov eax, dword [ebp - 4]
mov word [ebx + 8], 1
mov dword [ebx], edx
inc edi
mov dword [esi], ebx
mov dword [esi + 8], 0x11
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0xe
mov dword [esi + 4], ecx
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x422fb7
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x25
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x24
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
sub ebx, 0x3d
je 0x42303a
dec ebx
je 0x422ffb
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x27
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp byte [ecx + 2], 0x3d
jne 0x42301f
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
lea edi, [ecx + 2]
inc edi
mov dword [esi + 8], 0x1d
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x30
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x29
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
sub ebx, 0x3c
je 0x42309d
dec ebx
je 0x423082
dec ebx
je 0x422d5c
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x28
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x2a
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp byte [ecx + 2], 0x3d
jne 0x4230c1
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
lea edi, [ecx + 2]
inc edi
mov dword [esi + 8], 0x1c
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x2f
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x26
jne 0x4230fc
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x22
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x42311c
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x1b
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x423131
cmp dword [ebp + eax - 0x2848], 0xf
mov eax, 0x2e
jl 0x423136
mov eax, 0x39
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
inc edi
mov dword [esi + 8], eax
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x7c
jne 0x423170
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x21
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x423190
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x19
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x2c
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x4231ce
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x1a
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x2d
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x423245
lea eax, [ebx - 0x31]
mov dword [ebp - 0xc], edi
call fcn.004703a0
mov dword [esi], eax
test eax, eax
je 0x423cbf
push 0
push 0
push str.RegExMatch
mov ecx, 0x4ad2f8
call fcn.0041f960
mov ecx, dword [esi]
inc dword [ebp - 4]
mov dword [ecx + 4], eax
mov edx, dword [esi]
mov byte [edx + 8], 1
mov eax, dword [esi]
mov byte [eax + 9], 2
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x40
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x38
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x20
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x3d
jne 0x4232a1
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x13
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x1f
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x4232e7
cmp dword [ebp + eax - 0x2848], 0xf
jge 0x4232e7
cmp ecx, 0x1fe
jg 0x4247b4
inc ecx
mov dword [esi + 8], 0x2b
mov dword [ebp - 4], ecx
mov esi, edi
lea esp, [esp]
mov al, byte [esi]
test al, al
je 0x423ce1
cmp al, 0x22
jne 0x423303
inc esi
cmp byte [esi], al
jne 0x423306
inc esi
jmp 0x4232f0
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 4]
mov ecx, esi
sub ecx, ebx
add edi, edi
lea ecx, [ecx - 1]
mov dword [ebp + edi*8 - 0x2838], 0
call fcn.00470330
mov dword [ebp + edi*8 - 0x2840], eax
test eax, eax
je 0x423cbf
push 0
push 0xffffffffffffffff
push 1
push 0x49d3ec
push 0x49d3f0
push eax
xor eax, eax
or ecx, 0xffffffff
call fcn.004736a0
add esp, 0x18
mov al, byte [esi]
cmp al, 0x20
je 0x42335c
cmp al, 9
jne 0x42335f
inc esi
jmp 0x423352
mov al, byte [esi]
mov dword [ebp - 0xc], esi
test al, al
je 0x423785
movsx eax, al
push eax
push 0x49d3f4
call fcn.00486dd1
add esp, 8
test eax, eax
je 0x423785
mov al, byte [esi + 1]
cmp al, 0x3d
je 0x423785
cmp al, 0x26
jne 0x42339c
cmp byte [esi], al
je 0x423785
mov eax, dword [ebp - 4]
cmp eax, 0x1fe
jg 0x4247b4
mov esi, dword [ebp - 0x20]
inc eax
mov dword [ebp - 4], eax
inc dword [ebp - 4]
add eax, eax
mov dword [ebp + eax*8 - 0x2838], 0x2b
mov eax, dword [ebp - 4]
xor ebx, ebx
jmp 0x422880
cmp byte [ebp - 0x19], 0x2e
jne 0x423574
cmp ebx, 0x3d
jne 0x4233f5
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
inc edi
mov dword [esi + 8], 0x1e
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
cmp ebx, 0x20
je 0x42353b
cmp ebx, 9
je 0x42353b
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x423574
cmp dword [ebp + eax - 0x2848], 0xf
lea eax, [ebp + eax - 0x2838]
mov dword [ebp - 0x24], eax
jge 0x423574
cmp ecx, 0x1fe
jg 0x4247b4
mov eax, edi
call fcn.0042f360
mov ebx, eax
movsx eax, byte [ebx]
push eax
push str.__t____:_______.
mov dword [ebp - 8], ebx
call fcn.00486dd1
add esp, 8
test eax, eax
je 0x423cf2
cmp ebx, edi
jne 0x423468
cmp byte [ebx], 0x28
jne 0x423cff
lea eax, [esi - 0x10]
lea ecx, [ebp - 0x2840]
mov byte [ebp - 0x19], 0
cmp eax, ecx
jb 0x4234af
mov ecx, 0xb
mov edi, edi
cmp dword [eax + 8], ecx
jne 0x423494
sub eax, 0x20
lea edx, [ebp - 0x2840]
cmp eax, edx
jae 0x423480
jmp 0x4234af
cmp dword [eax + 8], 8
jge 0x4234a7
lea ecx, [ebp - 0x2840]
cmp eax, ecx
jbe 0x4234a7
sub eax, 0x10
cmp dword [eax + 8], 0x3f
sete byte [ebp - 0x19]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 8]
sub ecx, edi
mov ebx, edi
mov dword [edx], 5
call fcn.00470330
mov dword [esi], eax
test eax, eax
je 0x423cbf
mov ebx, 1
add dword [ebp - 4], ebx
lea eax, [ebx + 0xb]
call fcn.004703a0
test eax, eax
je 0x423cbf
mov esi, dword [ebp - 8]
dec edi
mov dword [eax], edi
mov word [eax + 8], 0x201
cmp byte [esi], 0x28
jne 0x423509
cmp byte [ebp - 0x19], 0
jne 0x423509
lea edx, [ebx + 0x3d]
mov dword [eax + 4], 0x4a8c58
jmp 0x423515
mov edx, 0xb
mov dword [eax + 4], 0x4a8a58
mov ecx, dword [ebp - 4]
inc dword [ebp - 4]
add ecx, ecx
mov dword [ebp + ecx*8 - 0x2840], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc], esi
mov esi, dword [ebp - 0x20]
mov dword [ebp + ecx*8 - 0x2838], edx
xor ebx, ebx
jmp 0x422880
cmp dword [ebp - 4], 0
je 0x423d0d
mov cl, byte [ecx - 1]
cmp cl, 0x20
je 0x423556
cmp cl, 9
jne 0x423d0d
mov dword [esi + 8], 0x2b
mov edi, dword [ebp - 0xc]
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0xc], edi
xor ebx, ebx
jmp 0x422880
mov eax, edi
mov dword [ebp - 8], eax
movsx eax, byte [eax]
push eax
push str.__t____:_______.
call fcn.00486dd1
add esp, 8
test eax, eax
jne 0x4235ac
mov edi, edi
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
movsx eax, byte [eax]
push eax
push str.__t____:_______.
call fcn.00486dd1
add esp, 8
test eax, eax
je 0x423590
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x4235be
mov ecx, dword [ebp - 8]
cmp ecx, dword [eax]
jae 0x42384a
mov edx, dword [ebp - 8]
cmp byte [edx], 0x2e
jne 0x423600
mov eax, edx
inc eax
mov dword [ebp - 8], eax
movsx eax, byte [eax]
push eax
push str.__t____:_______.
call fcn.00486dd1
add esp, 8
test eax, eax
jne 0x4235fd
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
movsx eax, byte [eax]
push eax
push str.__t____:_______.
call fcn.00486dd1
add esp, 8
test eax, eax
je 0x4235e1
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
mov eax, edx
sub eax, ecx
cmp eax, 3
jne 0x422ab2
mov al, byte [ecx]
cmp al, 0x6e
je 0x42361e
cmp al, 0x4e
jne 0x422ab2
mov ecx, edx
mov al, byte [ecx]
cmp al, 0x20
je 0x42362a
cmp al, 9
jne 0x42362d
inc ecx
jmp 0x423620
cmp byte [ecx], 0x3a
je 0x422ab2
cmp ebx, 0x6f
je 0x423640
cmp ebx, 0x4f
jne 0x423656
mov eax, dword [ebp - 0x10]
mov al, byte [eax + 2]
cmp al, 0x74
je 0x423736
cmp al, 0x54
je 0x423736
cmp ebx, 0x65
je 0x423664
cmp ebx, 0x45
jne 0x422ab2
mov ecx, dword [ebp - 0x10]
mov al, byte [ecx + 2]
cmp al, 0x77
je 0x423676
cmp al, 0x57
jne 0x422ab2
mov eax, dword [ebp - 4]
test eax, eax
je 0x4236a0
mov edx, dword [ebp - 0x18]
cmp dword [ebp + edx - 0x2848], 0xf
jge 0x4236a0
cmp eax, 0x1fe
jg 0x4247b4
inc eax
mov dword [esi + 8], 0x2b
mov dword [ebp - 4], eax
cmp dword [0x4ad23c], 0
jne 0x4236bb
call fcn.00470410
mov dword [0x4ad23c], eax
test eax, eax
je 0x423cbf
mov ecx, dword [0x4ad240]
cmp dword [ecx + 8], 0xc
jae 0x4236dd
call fcn.00470410
mov ecx, dword [0x4ad240]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x423cbf
mov eax, dword [ecx + 4]
add dword [ecx + 8], 0xfffffff4
lea edx, [eax + 0xc]
mov dword [0x4ad244], eax
mov dword [ecx + 4], edx
test eax, eax
je 0x423cbf
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 8]
mov esi, dword [ebp - 0x20]
mov dword [eax], ecx
mov ecx, dword [ebp - 4]
inc dword [ebp - 4]
add ecx, ecx
mov dword [eax + 4], 0x4a8b18
mov word [eax + 8], 0x101
mov dword [ebp + ecx*8 - 0x2840], eax
mov eax, dword [ebp - 4]
mov dword [ebp + ecx*8 - 0x2838], 0x3f
mov dword [ebp - 0xc], edx
xor ebx, ebx
jmp 0x422880
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
mov dword [esi + 8], 0x23
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], edx
xor ebx, ebx
jmp 0x422880
test ebx, ebx
je 0x423762
mov ecx, dword [ebp - 0x10]
push ebx
push ecx
push edi
call fcn.0048e6e0
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x42376d
mov edi, 0x499821
mov edx, dword [ebp - 0x18]
mov dword [ebp + edx - 0x2840], edi
test edi, edi
je 0x423cbf
mov eax, dword [ebp - 8]
mov dword [ebp - 0xc], eax
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 0x20]
xor ebx, ebx
jmp 0x422880
cmp esi, ebx
je 0x423d1d
cmp eax, 0x1ff
jg 0x4247b4
cmp byte [esi + 8], 0
je 0x4237f9
cmp eax, ebx
je 0x4237dc
mov ecx, eax
add ecx, ecx
cmp dword [ebp + ecx*8 - 0x2848], 0xf
lea ecx, [ebp + ecx*8 - 0x2838]
jge 0x4237dc
cmp eax, 0x1fe
jg 0x4247b4
inc eax
mov dword [ecx], 0x2b
mov dword [ebp - 4], eax
add eax, eax
mov dword [ebp + eax*8 - 0x2838], 0x3e
mov dword [ebp + eax*8 - 0x2840], esi
mov byte [esi + 9], 0
jmp 0x423c9d
mov ecx, dword [esi]
mov dl, byte [ecx]
cmp dl, byte [0x4a78a6]
jne 0x423b8e
mov eax, dword [ebp - 0x20]
movzx esi, word [eax + 0xa]
movsx eax, byte [esi + ecx]
add esi, ecx
push eax
push str.__t____:_______.
mov dword [ebp - 8], esi
call fcn.00486dd1
add esp, 8
test eax, eax
jne 0x42384a
jmp 0x423830
movsx eax, byte [esi + 1]
inc esi
push eax
push str.__t____:_______.
call fcn.00486dd1
add esp, 8
test eax, eax
je 0x423830
mov dword [ebp - 8], esi
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x42387c
mov edx, ecx
add edx, edx
cmp dword [ebp + edx*8 - 0x2848], 0xf
lea eax, [ebp + edx*8 - 0x2838]
jge 0x42387c
cmp ecx, 0x1fe
jg 0x4247b4
inc ecx
mov dword [eax], 0x2b
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0xc]
shl ecx, 4
lea eax, [ebp + ecx - 0x2838]
mov dword [ebp - 0x24], eax
mov dword [eax], 7
mov eax, dword [ebp - 8]
sub eax, edx
mov ebx, eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x20], ebx
test edx, edx
je 0x42396e
cmp byte [edx], 0
je 0x42396e
cmp eax, 0xffffffff
jne 0x4238ce
mov eax, edx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4238c0
sub eax, edx
mov ebx, eax
mov dword [ebp - 0x20], eax
inc ebx
lea eax, [ebx - 1]
cmp eax, 0x7fff
ja 0x42392f
cmp dword [0x4ad23c], 0
jne 0x4238f0
call fcn.00470410
mov dword [0x4ad23c], eax
test eax, eax
je 0x42392f
mov edi, dword [0x4ad240]
cmp ebx, dword [edi + 8]
jbe 0x42390d
call fcn.00470410
mov edi, dword [0x4ad240]
mov dword [edi + 0xc], eax
test eax, eax
je 0x42392f
mov esi, dword [edi + 4]
mov eax, ebx
and eax, 3
mov dword [0x4ad244], esi
je 0x423922
sub ebx, eax
add ebx, 4
sub dword [edi + 8], ebx
lea ecx, [ebx + esi]
mov dword [edi + 4], ecx
test esi, esi
jne 0x423949
mov edx, dword [ebp - 0xc]
push edx
push str.Out_of_memory.
mov ecx, 0x4ad2f8
call fcn.0042e0b0
mov ecx, dword [ebp - 0x18]
xor eax, eax
jmp 0x423973
cmp dword [ebp - 0x20], 0
je 0x423960
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0xc]
push eax
push ecx
push esi
call fcn.0048e6e0
add esp, 0xc
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
mov byte [esi + edx], 0
mov eax, esi
jmp 0x423979
mov eax, 0x499821
mov edi, dword [0x4ad240]
mov dword [ebp + ecx - 0x283c], eax
test eax, eax
je 0x423cbf
mov ebx, dword [ebp - 0x28]
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x10], ebx
add ebx, 0xc
test eax, eax
je 0x4239ae
mov ecx, dword [ebp - 8]
jmp 0x4239a0
cmp eax, ecx
jae 0x4239ae
mov eax, dword [ebx + 0xc]
add ebx, 0xc
test eax, eax
jne 0x4239a0
mov ecx, ebx
sub ecx, dword [ebp - 0x10]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea esi, [eax + eax*2]
add esi, esi
add esi, esi
lea eax, [esi + 0xc]
lea ecx, [eax - 1]
sub ebx, 0xc
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x28], eax
cmp ecx, 0x7fff
ja 0x423cbf
cmp dword [0x4ad23c], 0
jne 0x423a57
push 0x10
call fcn.004881d4
mov esi, eax
add esp, 4
test esi, esi
je 0x423a24
push 0x8000
mov dword [esi + 0xc], 0
call fcn.00485f99
add esp, 4
mov dword [esi + 4], eax
mov dword [esi], eax
test eax, eax
jne 0x423a2e
push esi
call fcn.00485b58
add esp, 4
mov edi, dword [0x4ad240]
xor esi, esi
jmp 0x423a43
inc dword [0x4ad248]
mov edi, esi
mov dword [esi + 8], 0x8000
mov dword [0x4ad240], edi
mov dword [0x4ad23c], esi
test esi, esi
je 0x423cbf
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x20]
cmp eax, dword [edi + 8]
jbe 0x423ac2
push 0x10
call fcn.004881d4
mov esi, eax
add esp, 4
test esi, esi
je 0x423a92
push 0x8000
mov dword [esi + 0xc], 0
call fcn.00485f99
add esp, 4
mov dword [esi + 4], eax
mov dword [esi], eax
test eax, eax
jne 0x423a9c
push esi
call fcn.00485b58
add esp, 4
mov edi, dword [0x4ad240]
xor esi, esi
jmp 0x423ab1
inc dword [0x4ad248]
mov edi, esi
mov dword [esi + 8], 0x8000
mov dword [0x4ad240], edi
mov dword [edi + 0xc], esi
test esi, esi
je 0x423cbf
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x20]
mov edx, dword [edi + 4]
mov ecx, eax
and ecx, 3
mov dword [0x4ad244], edx
je 0x423ad7
sub eax, ecx
add eax, 4
sub dword [edi + 8], eax
add edx, eax
cmp dword [0x4ad244], 0
mov dword [edi + 4], edx
je 0x423cbf
mov eax, dword [ebp - 0x10]
mov edi, dword [0x4ad244]
push esi
push eax
push edi
call fcn.0048e6e0
mov ecx, dword [ebp - 0x18]
add esp, 0xc
mov dword [esi + edi], 0
cmp dword [edi], 0
mov eax, edi
je 0x423b27
mov edx, dword [ebp - 0xc]
mov esi, dword [ebp + ecx - 0x283c]
sub esi, edx
add dword [eax], esi
add eax, 0xc
cmp dword [eax], 0
jne 0x423b14
mov edx, dword [ebp - 8]
mov esi, dword [ebp - 4]
mov dword [ebp + ecx - 0x2840], edi
cmp byte [edx], 0x28
jne 0x423b82
test esi, esi
je 0x423b46
mov ecx, dword [ebp - 0x24]
cmp dword [ecx - 0x10], 0x3f
je 0x423b82
cmp esi, 0x1fe
jg 0x4247b4
mov byte [eax + 8], 1
mov dword [eax + 4], 0
mov cl, byte [edi + 9]
mov byte [eax + 9], cl
inc esi
mov ecx, esi
add ecx, ecx
mov dword [ebp + ecx*8 - 0x2838], 0x3e
mov dword [ebp + ecx*8 - 0x2840], eax
mov dword [ebp - 0xc], edx
jmp 0x423caa
mov byte [eax + 8], 0
mov dword [ebp - 0xc], edx
jmp 0x423caa
cmp eax, ebx
je 0x423bbd
mov edx, eax
shl edx, 4
cmp dword [ebp + edx - 0x2848], 0xf
lea ecx, [ebp + edx - 0x2838]
jge 0x423bbd
cmp eax, 0x1fe
jg 0x4247b4
inc eax
mov dword [ecx], 0x2b
mov dword [ebp - 4], eax
mov ecx, dword [esi + 4]
add eax, eax
lea edi, [ebp + eax*8 - 0x2840]
mov dword [edi], ecx
mov ecx, dword [esi + 4]
mov dl, byte [ecx + 0x17]
test dl, dl
jne 0x423bdd
mov edx, dword [ecx + 0xc]
mov dl, byte [edx + 0x17]
jmp 0x423bdf
xor ebx, ebx
cmp dl, 1
jne 0x423bfc
cmp dword [0x4ab3d8], ebx
je 0x423bfc
mov dword [ebp + eax*8 - 0x2838], 4
jmp 0x423c96
mov ecx, dword [ecx + 0x10]
cmp ecx, 0x441ed0
jne 0x423c56
mov dword [ebp + eax*8 - 0x2838], 1
mov eax, dword [esi]
movzx esi, byte [eax]
test esi, 0xffffff80
jne 0x423c31
push 2
push esi
call fcn.0048731e
add esp, 8
test eax, eax
je 0x423c31
and esi, 0xffffffdf
mov eax, esi
cmp al, 0x54
jne 0x423c48
mov esi, dword [ebp - 0x20]
mov eax, 1
xor ecx, ecx
mov dword [edi], eax
mov dword [edi + 4], ecx
jmp 0x423c9d
mov esi, dword [ebp - 0x20]
xor eax, eax
xor ecx, ecx
mov dword [edi], eax
mov dword [edi + 4], ecx
jmp 0x423c9d
cmp ecx, 0x442a80
jne 0x423c74
mov dword [ebp + eax*8 - 0x2838], 1
mov dword [edi], 4
mov dword [edi + 4], ebx
jmp 0x423c9d
cmp ecx, 0x4428a0
jne 0x423c8b
mov dword [ebp + eax*8 - 0x2838], ebx
mov dword [edi], 0x499821
jmp 0x423c9d
mov dword [ebp + eax*8 - 0x2838], 7
mov dword [ebp + eax*8 - 0x283c], ebx
movzx ecx, word [esi + 0xa]
add dword [ebp - 0xc], ecx
mov ebx, dword [ebp - 0x28]
mov esi, dword [ebp - 4]
add ebx, 0xc
inc esi
mov dword [ebp - 0x28], ebx
mov ecx, ebx
mov dword [ebp - 4], esi
mov eax, esi
xor ebx, ebx
jmp 0x422850
push 0x499821
push 0
push str.Out_of_memory.
jmp 0x4247c0
push 0x499821
push 0
push str.Unexpected___
jmp 0x4247c0
push 0x499821
push 0
push str.Missing_close_quote
jmp 0x4247c0
push ebx
push 0
push str.This_character_is_not_allowed_here.
jmp 0x4247c0
dec edi
push edi
push 0
push str.Ambiguous_or_invalid_use_of__._
jmp 0x4247c0
mov edx, dword [ebp - 0x10]
push edx
push 0
push str.Ambiguous_or_invalid_use_of__._
jmp 0x4247c0
cmp eax, 0x1ff
jg 0x4247b4
add eax, eax
mov dword [ebp + eax*8 - 0x2838], 0x41
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x840], eax
mov dword [ebp - 4], 1
lea esi, [ebp - 0x2840]
mov dword [ebp - 8], ebx
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 8]
jmp 0x423d60
mov eax, dword [ebp - 0x14]
mov edi, dword [esi + 8]
lea eax, [ebp + eax*4 - 0x3040]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + edx*4 - 0x844]
mov ebx, dword [eax + 8]
cmp edi, 8
jge 0x423df1
cmp edi, 7
jne 0x423dd8
cmp dword [esi + 4], 0
jne 0x423dd8
mov eax, dword [esi]
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x423d99
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x423db0
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x423dab
mov eax, dword [eax + 0xc]
mov cl, byte [eax + 0x17]
cmp cl, 2
jne 0x423dd8
mov eax, dword [esi + 0x18]
cmp eax, 0x1e
jg 0x423dbd
cmp eax, 0x13
jge 0x423dd1
cmp eax, 9
je 0x423dd1
cmp eax, 0xa
je 0x423dd1
cmp ebx, 0x3c
je 0x423dd1
cmp ebx, 0x3d
jne 0x423dd8
mov dword [esi + 8], 4
mov eax, dword [ebp - 0x10]
mov dword [eax], esi
mov ecx, dword [eax]
add esi, 0x10
inc dword [ebp - 0x14]
mov dword [ecx + 0xc], 0
jmp 0x423d58
lea eax, [edi - 0xb]
cmp eax, 0x36
ja case.0x423e04.19
movzx eax, byte [eax + 0x4248b8]
jmp dword [eax*4 + 0x424894]
cmp edi, 0x12
je 0x423e4b
mov eax, ebx
sub eax, edi
cmp eax, 3
je 0x423e4b
cmp ebx, 8
je 0x423e30
cmp ebx, 0x11
jg 0x4242eb
cmp ebx, 0xf
jl 0x4242eb
cmp edi, 0xc
jne 0x424574
push 0x499821
mov eax, 0x49d420
push 0
push eax
jmp 0x4247c0
test ecx, ecx
je 0x423fdc
lea eax, [ebx - 0xf]
cmp eax, 2
ja 0x423fdc
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], eax
cmp edi, 0x12
je 0x423e76
cmp dword [esi - 8], ebx
je 0x423f0b
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x423e97
movzx ecx, byte [ecx + 9]
cmp ecx, dword [eax + 0x10]
jl 0x423e97
cmp byte [eax + 0x3e], 0
je 0x424590
mov dword [ebp - 0x18], 0
mov eax, dword [esi - 8]
cmp eax, 0x12
je 0x423f64
cmp eax, ebx
je 0x423f64
cmp dword [ebp - 0x18], 0
je 0x423ef5
mov eax, dword [ebp - 0x18]
cmp dword [eax + 8], 0x445160
jne 0x423ef5
mov ecx, dword [ebp - 8]
cmp byte [ecx + 9], 0
jne 0x423ef5
cmp dword [esi - 8], 0
jne 0x423ef5
cmp dword [esi - 0x18], 0xf
jne 0x423ef5
mov edx, dword [esi - 0x10]
push 0
push edx
call fcn.00444f70
add esp, 8
test eax, eax
je 0x423ef2
cdq
mov dword [esi - 8], 1
mov dword [esi - 0x10], eax
mov dword [esi - 0xc], edx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
inc byte [eax + 9]
mov al, byte [eax + 9]
cmp ebx, 0x11
jne 0x423f0b
test al, 1
jne 0x4245a2
cmp dword [ebp - 0x18], 0
je 0x423fdc
cmp edi, 0xc
jne 0x423fe5
mov eax, dword [ebp - 8]
movzx ecx, byte [eax + 9]
mov eax, dword [ebp - 0x18]
cmp ecx, dword [eax + 0x14]
jge 0x423f3a
mov ecx, dword [ebp - 8]
cmp byte [ecx + 8], 2
jne 0x4245b3
mov eax, dword [ebp + edx*4 - 0x844]
mov ecx, dword [eax + 4]
mov eax, dword [ebp + edx*4 - 0x848]
dec edx
add esi, 0x10
cmp dword [eax + 8], 0x3e
mov dword [ebp - 4], edx
mov dword [ebp - 8], ecx
jne 0x423d60
jmp 0x4242eb
xor ecx, ecx
cmp edi, 0x12
jne 0x423fac
mov edi, dword [ebp - 0x14]
mov ebx, 3
jmp 0x423f80
mov dword [ebp + edi*4 - 0x3040], esi
mov eax, dword [ebp + edi*4 - 0x3040]
mov dword [eax + 8], ebx
mov dword [eax], 0x499821
add esi, 0x10
mov dword [eax + 0xc], 0
inc ecx
inc edi
cmp dword [esi + 8], 0x12
je 0x423f80
mov dword [ebp - 0x14], edi
mov eax, dword [esi + 8]
cmp eax, 0xe
jg 0x423fbd
cmp eax, 0xc
jge 0x4245c5
mov edi, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
test edi, edi
je 0x423fd4
movzx ebx, byte [eax + 9]
cmp ebx, dword [edi + 0x14]
jl 0x4245c5
add byte [eax + 9], cl
jmp 0x423d58
cmp edi, 0xc
je 0x423f3a
jle 0x424086
cmp edi, 0xe
jg 0x424086
mov ecx, dword [ebp + edx*4 - 0x844]
mov dword [ecx + 8], 0x3e
mov eax, dword [esi + 4]
cmp byte [eax + 1], 0x28
jne 0x424078
cmp edi, 0xe
je 0x4245d7
mov edi, dword [ebp - 8]
cmp dword [edi + 4], 0x4a8a58
jne 0x4245d7
mov al, byte [edi + 9]
cmp al, 2
ja 0x4245d7
cmp al, 1
jne 0x424053
mov eax, dword [ebp - 0x10]
inc dword [ebp - 0x14]
mov byte [edi + 9], 2
mov dword [esi + 8], 3
mov dword [esi], 0x499821
mov dword [eax], esi
mov dword [esi + 0xc], 0
mov eax, dword [ecx]
add esi, 0x10
mov dword [eax + 4], 0x4a8c58
mov ecx, dword [ecx + 4]
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [esi + 4], ecx
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x423d58
mov edx, dword [ecx + 4]
add esi, 0x10
mov dword [ebp - 8], edx
jmp 0x4242eb
mov al, byte [ebx + 0x4a8e40]
cmp al, byte [edi + 0x4a8e40]
jae 0x4242eb
cmp dword [ebp - 8], 0
jne 0x424109
mov dword [ebp + edx*4 - 0x840], esi
inc edx
cmp dword [esi + 0x18], 0x41
lea eax, [esi + 0x10]
mov dword [ebp - 4], edx
je 0x424109
mov edi, 0x13
cmp dword [eax + 0x18], 0x24
jne 0x424109
mov ecx, dword [eax + 8]
cmp ecx, 4
je 0x4240fd
cmp ecx, 7
jne 0x424109
cmp dword [eax + 4], 0
jne 0x424109
mov ecx, dword [eax]
mov dl, byte [ecx + 0x17]
test dl, dl
jne 0x4240df
mov edx, dword [ecx + 0xc]
mov dl, byte [edx + 0x17]
cmp dl, 1
je 0x4240f6
mov dl, byte [ecx + 0x17]
test dl, dl
jne 0x4240f1
mov ecx, dword [ecx + 0xc]
mov dl, byte [ecx + 0x17]
cmp dl, 2
jne 0x424109
mov dword [eax + 8], 4
mov dword [eax + 0x18], edi
add eax, 0x20
cmp dword [eax + 8], 0x41
jne 0x4240b7
add esi, 0x10
jmp 0x423d55
mov dword [ebp + edx*4 - 0x840], esi
inc edx
add esi, 0x10
mov dword [esi + 4], ecx
cmp edi, 0x3e
jne 0x42413d
mov ecx, dword [esi - 0x10]
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x423d60
cmp ebx, 0x3f
jne 0x424168
mov eax, dword [ebp + edx*4 - 0x844]
mov dword [ebp + edx*4 - 0x840], esi
mov dword [eax + 8], 0x3e
mov ecx, dword [eax]
inc edx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x423d60
mov dword [ebp + edx*4 - 0x840], esi
xor ecx, ecx
inc edx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x423d60
mov dword [esi + 4], ecx
mov ecx, dword [esi]
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x423d60
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [esi + 8], 0x3e
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x4242eb
cmp ebx, 8
je 0x4245e9
test ecx, ecx
je 0x4241d2
cmp ebx, 0x11
jne 0x4241d2
inc byte [ecx + 9]
add esi, 0x10
jmp 0x423d60
cmp ebx, 0xf
je 0x4245fa
cmp ebx, 0x10
je 0x42460b
cmp ebx, 0x11
je 0x42461c
cmp ebx, 0x20
jne 0x4242eb
mov eax, dword [ebp + edx*4 - 0x844]
mov edi, dword [ebp - 0x10]
inc dword [ebp - 0x14]
mov dword [eax + 0xc], esi
mov dword [ebp + edx*4 - 0x844], esi
mov dword [edi], eax
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x423d60
cmp ebx, 8
je 0x42462d
cmp ebx, 0xf
je 0x424798
cmp ebx, 0x10
je 0x4247a6
cmp ebx, 0x11
jne 0x4242eb
push 0x499821
push 0
push str.Missing___
jmp 0x4247c0
test ecx, ecx
je case.0x423e04.19
mov eax, dword [esi + 0x18]
cmp eax, 0xc
je 0x424260
cmp eax, 0xd
jne case.0x423e04.19
mov byte [ecx + 8], 2
add esi, 0x10
jmp 0x423d60
cmp edi, 0x1e
jg 0x424276
cmp edi, 0x13
jge 0x424280
cmp edi, 9
je 0x424280
cmp edi, 0xa
jne 0x424297
lea ecx, [ebp - 0x2840]
cmp esi, ecx
jbe 0x424297
cmp dword [esi - 8], 4
jne 0x424297
mov dword [esi - 0xc], 1
movzx eax, byte [edi + 0x4a8e40]
mov ecx, eax
and ecx, 0x80000001
jns 0x4242ad
dec ecx
or ecx, 0xfffffffe
inc ecx
add ecx, eax
movzx eax, byte [ebx + 0x4a8e40]
cmp eax, ecx
jl 0x42454a
lea ecx, [edi - 0x13]
cmp ecx, 0xb
ja 0x4242cf
cmp ebx, 0x3a
jne 0x42454a
cmp ebx, 0x3b
jne 0x4242eb
cmp edi, 0x36
jl 0x4242e2
cmp edi, 0x3a
jle 0x42454a
cmp edi, 0x23
je 0x42454a
mov eax, dword [ebp - 4]
mov ebx, dword [ebp + eax*4 - 0x844]
mov ecx, dword [ebp - 0x10]
dec eax
xor edx, edx
mov dword [ebx + 0xc], edx
mov edi, dword [ebx + 8]
mov dword [ebp - 4], eax
lea eax, [edi - 0x3c]
mov dword [ecx], ebx
cmp eax, 4
ja case.default.0x424312
jmp dword [eax*4 + 0x4248f0]
mov edi, dword [ebx]
mov ecx, dword [edi + 4]
mov eax, dword [esi + 8]
cmp ecx, 0x4a8a58
je 0x424335
cmp ecx, 0x4a8c58
jne 0x424542
lea ecx, [eax - 0x13]
cmp ecx, 0xb
ja 0x4243fc
cmp eax, 0x13
je 0x4243e1
movzx edi, byte [edi + 9]
cmp edi, 2
je 0x424387
mov eax, 0x10
call fcn.004925b0
mov edx, dword [ebp - 0x10]
mov ecx, esp
mov eax, edi
mov dword [edx], ecx
cdq
mov dword [ecx + 8], 1
mov dword [ecx], eax
mov eax, 1
add dword [ebp - 0x14], eax
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], 0
mov dword [ebp - 0x24], eax
jmp 0x42438a
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x14]
lea ecx, [ebp + eax*4 - 0x3040]
mov eax, 0x10
mov dword [ebp - 0x28], ecx
call fcn.004925b0
mov edx, dword [ebp - 0x28]
mov edi, esp
mov eax, 0xc
mov dword [edx], edi
mov dword [edi + 8], 0x3e
call fcn.004703a0
mov dword [edi], eax
test eax, eax
je 0x423cbf
mov dword [eax + 4], 0x4a8ad8
mov ecx, dword [edi]
mov al, byte [ebp - 0x24]
mov byte [ecx + 8], 1
mov edx, dword [edi]
mov byte [edx + 9], al
mov dword [edi + 0xc], 0
jmp 0x4243e4
dec dword [ebp - 0x14]
mov ebx, dword [ebx]
mov dword [esi], ebx
mov dword [ebx + 4], 0x4a8a98
mov eax, dword [esi]
inc byte [eax + 9]
inc dword [ebp - 0x14]
jmp 0x423d55
cmp eax, 8
jl 0x424542
cmp eax, 9
je 0x424450
cmp eax, 0xa
je 0x424463
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + ecx*4 - 0x844]
mov eax, dword [edx + 8]
cmp eax, 0x3c
je 0x42443d
cmp eax, 0x3d
jne 0x424542
dec dword [ebp - 4]
inc dword [ebp - 0x14]
mov eax, 0x4a8b98
mov dword [edi + 4], eax
jmp 0x423d55
dec dword [ebp - 4]
inc dword [ebp - 0x14]
mov eax, 0x4a8b58
mov dword [edi + 4], eax
jmp 0x423d55
mov eax, 0x4a8bd8
add esi, 0x10
inc dword [ebp - 0x14]
mov dword [edi + 4], eax
jmp 0x423d55
mov eax, 0x4a8c18
add esi, 0x10
inc dword [ebp - 0x14]
mov dword [edi + 4], eax
jmp 0x423d55
cmp dword [ebp - 0x14], edx
je 0x424542
mov ecx, dword [ecx - 4]
cmp dword [ecx + 8], 4
jne 0x424542
inc dword [ebp - 0x14]
mov dword [ecx + 4], 1
jmp 0x423d55
lea eax, [edi - 0x13]
cmp eax, 0xb
ja 0x424542
cmp dword [ebx], edx
je 0x424542
cmp edi, 0x13
je case.0x424312.63
lea eax, [edi - 0x14]
cmp eax, 0xa
ja case.default.0x4244c0
jmp dword [eax*4 + 0x424904]
mov edi, 0x31
jmp case.default.0x4244c0
mov edi, 0x32
jmp case.default.0x4244c0
mov edi, 0x33
jmp case.default.0x4244c0
mov edi, 0x34
jmp case.default.0x4244c0
mov edi, 0x35
jmp case.default.0x4244c0
mov edi, 0x2c
jmp case.default.0x4244c0
mov edi, 0x2d
jmp case.default.0x4244c0
mov edi, 0x2e
jmp case.default.0x4244c0
mov edi, 0x2f
jmp case.default.0x4244c0
mov edi, 0x30
jmp case.default.0x4244c0
mov edi, 0x2b
mov eax, 0x10
call fcn.004925b0
mov ecx, dword [ebp - 0x10]
mov eax, esp
mov dword [eax + 8], edi
mov dword [ecx], eax
mov dword [eax + 0xc], 0
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp + eax*4 - 0x3040], ebx
mov dword [ebx + 8], 0x3e
inc dword [ebp - 0x14]
jmp 0x423d55
add edi, 0xffffffe0
cmp edi, 2
ja 0x424561
cmp dword [ebp - 0x14], 0
je 0x424561
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax - 4]
mov dword [ecx + 0xc], esi
mov dword [ebp + edx*4 - 0x840], esi
inc edx
mov dword [ebp - 4], edx
add esi, 0x10
jmp 0x423d58
mov eax, str.Unexpected____
cmp edi, 0xd
je 0x424583
mov eax, 0x49d2a4
push 0x499821
push 0
push eax
jmp 0x4247c0
mov edx, dword [ebp - 8]
mov eax, dword [edx]
push eax
push 0
push str.Too_many_parameters_passed_to_function.
jmp 0x4247c0
push 0x499821
push 0
push str.Missing__key:__in_object_literal.
jmp 0x4247c0
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
push edx
push 0
push str.Too_few_parameters_passed_to_function.
jmp 0x4247c0
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
push ecx
push 0
push str.Blank_parameter
jmp 0x4247c0
mov edx, dword [ebp - 8]
mov eax, dword [edx]
push eax
push 0
push str.Unsupported_method_call_syntax.
jmp 0x4247c0
push 0x499821
push 0
push str.A__:__is_missing_its____
jmp 0x4247c0
push 0x499821
push 0
push 0x49d4f0
jmp 0x4247c0
push 0x499821
push 0
push str.Missing_____before__:_
jmp 0x4247c0
push 0x499821
push 0
push str.Missing____before__:_
jmp 0x4247c0
mov esi, dword [ebp - 0x14]
shl esi, 4
lea eax, [esi + 0x10]
mov dword [ebp - 0x28], esi
call fcn.004703a0
mov edi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [edi + 0xc], eax
cmp eax, ebx
jne 0x42465a
push 0x499821
push ebx
push str.Out_of_memory.
jmp 0x4247c0
cmp dword [ebp - 0x14], ebx
jle 0x424779
mov dword [ebp - 0x24], ebx
jmp 0x424670
mov esi, dword [edi + 0xc]
add esi, dword [ebp - 0x24]
mov eax, dword [ebp + ebx*4 - 0x3040]
mov ecx, dword [eax]
mov dword [esi], ecx
mov edx, dword [eax + 4]
mov dword [esi + 4], edx
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov edx, dword [eax + 0xc]
mov dword [esi + 0xc], edx
cmp dword [esi + 8], 5
jne 0x424742
mov eax, dword [esi]
push 0
push 1
push 0
push 1
call fcn.00472d70
add esp, 0x10
cmp eax, 1
je 0x4246c0
mov dword [esi + 4], 0
jmp 0x424742
cmp dword [0x4ad23c], 0
jne 0x4246d7
call fcn.00470410
mov dword [0x4ad23c], eax
test eax, eax
je 0x424707
mov ecx, dword [0x4ad240]
cmp dword [ecx + 8], 8
jae 0x4246f5
call fcn.00470410
mov ecx, dword [0x4ad240]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x424707
mov eax, dword [ecx + 4]
add dword [ecx + 8], 0xfffffff8
lea edx, [eax + 8]
mov dword [0x4ad244], eax
mov dword [ecx + 4], edx
mov dword [esi + 4], eax
test eax, eax
je 0x423cbf
mov edi, dword [esi]
mov eax, edi
call fcn.0040d760
test al, al
je 0x42472e
push 0x10
push 0
push edi
call fcn.00487d6f
add esp, 0xc
jmp 0x424737
push edi
call fcn.00487371
add esp, 4
mov ecx, dword [esi + 4]
mov edi, dword [ebp + 0xc]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x424768
lea eax, [ebx + 1]
cmp dword [ebp + ebx*4 - 0x303c], ecx
je 0x42475f
inc eax
cmp dword [ebp + eax*4 - 0x3040], ecx
jne 0x424755
shl eax, 4
add eax, dword [edi + 0xc]
mov dword [esi + 0xc], eax
add dword [ebp - 0x24], 0x10
inc ebx
cmp ebx, dword [ebp - 0x14]
jl 0x424670
mov esi, dword [ebp - 0x28]
mov eax, dword [edi + 0xc]
mov dword [eax + esi + 8], 0x41
mov eax, 1
lea esp, [ebp - 0x3050]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push 0x499821
push 0
push 0x49c1dc
jmp 0x4247c0
push 0x499821
push 0
push str.Missing____
jmp 0x4247c0
push 0x499821
push 0
push str.Expression_too_long
mov ecx, dword [ebp + 8]
call fcn.0042de00
lea esp, [ebp - 0x3050]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8