Function at 0x4d51f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3c
mov eax, dword [0x51fb30]
movq xmm0, qword [0x51fb28]
push ebx
push esi
mov esi, dword [ecx]
shl esi, 4
add esi, ecx
mov dword [esp + 0x40], eax
lea eax, [edx - 5]
mov dword [esp + 0x34], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x20], esi
movq qword [esp + 0x38], xmm0
lea ebx, [esi + 0xc]
mov dword [esp + 0x1c], ebx
push edi
mov edi, dword [ecx + 8]
cmp eax, 0x140
ja case.0x4d5245.10
movzx eax, byte [eax + 0x4d7c78]
jmp dword [eax*4 + 0x4d79f0]
mov byte [edi + 0x1d0], 0
mov dword [edi + 0x1b0], 0
jmp case.0x4d5245.10
mov byte [edi + 0x1d0], 1
mov dword [edi + 0x1b0], 0
jmp case.0x4d5245.10
mov byte [edi + 0x1d0], 2
mov dword [edi + 0x1b0], 0
jmp case.0x4d5245.10
mov ecx, edi
call fcn.004b0240
jmp case.0x4d5245.10
mov ecx, dword [esi]
mov esi, dword [edi + 0xc]
mov eax, dword [edi]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], eax
test esi, esi
jne 0x4d52c9
mov ecx, eax
call fcn.0049bb80
mov ecx, dword [esp + 0x1c]
mov esi, eax
mov eax, dword [esp + 0x14]
mov dword [edi + 0xc], esi
test esi, esi
je case.0x4d5245.10
cmp ecx, 7
je 0x4d5355
xor edi, edi
cmp dword [eax + 4], edi
jle 0x4d5355
mov ebx, dword [esp + 0x14]
nop dword [eax]
mov eax, dword [esi + 0xc]
mov dword [esp + 0x24], eax
cmp dword [esi + 0x10], eax
jg 0x4d52fb
mov ecx, esi
call fcn.0049bc40
test eax, eax
jne 0x4d5336
mov eax, dword [esp + 0x24]
inc dword [esi + 0xc]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x14]
mov word [eax + ecx*4], 0x22
mov byte [eax + ecx*4 + 3], 0
mov dword [eax + ecx*4 + 4], edi
lea ecx, [eax + ecx*4]
xor eax, eax
mov dword [ecx + 0xc], 0
cmp dword [esp + 0x1c], 9
mov dword [ecx + 0x10], 0
sete al
inc eax
mov dword [ecx + 8], eax
mov byte [esi + 0x6e], 0
mov eax, dword [esi + 0x78]
mov edx, 1
mov ecx, edi
shl edx, cl
test edx, eax
jne 0x4d534b
or eax, edx
mov dword [esi + 0x78], eax
inc edi
cmp edi, dword [ebx + 4]
jl 0x4d52e0
mov ebx, dword [esp + 0x20]
mov edi, dword [esi + 0xc]
cmp dword [esi + 0x10], edi
jg 0x4d536c
mov ecx, esi
call fcn.0049bc40
test eax, eax
jne case.0x4d5245.10
mov eax, dword [esi + 0x14]
lea ecx, [edi + edi*4]
inc dword [esi + 0xc]
mov dword [eax + ecx*4 + 4], 0
mov byte [eax + ecx*4 + 3], 0
mov word [eax + ecx*4], 0x21
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov byte [esi + 0x6e], 0
jmp case.0x4d5245.10
movzx eax, byte [ebx + 2]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov esi, dword [edi + 0xc]
test esi, esi
jne 0x4d53d1
mov ecx, dword [edi]
call fcn.0049bb80
mov esi, eax
mov dword [edi + 0xc], esi
test esi, esi
je case.0x4d5245.10
mov edi, dword [esi + 0xc]
cmp dword [esi + 0x10], edi
jg 0x4d53e8
mov ecx, esi
call fcn.0049bc40
test eax, eax
jne case.0x4d5245.10
mov eax, dword [esi + 0x14]
lea ecx, [edi + edi*4]
inc dword [esi + 0xc]
mov dword [eax + ecx*4 + 4], 1
jmp 0x4d537d
mov esi, dword [edi + 0xc]
test esi, esi
jne 0x4d5416
mov ecx, dword [edi]
call fcn.0049bb80
mov esi, eax
mov dword [edi + 0xc], esi
test esi, esi
je case.0x4d5245.10
mov edi, dword [esi + 0xc]
cmp dword [esi + 0x10], edi
jg 0x4d542d
mov ecx, esi
call fcn.0049bc40
test eax, eax
jne case.0x4d5245.10
mov eax, dword [esi + 0x14]
lea ecx, [edi + edi*4]
inc dword [esi + 0xc]
mov word [eax + ecx*4], 0x21
mov byte [eax + ecx*4 + 3], 0
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
jmp 0x4d5390
lea eax, [ebx + 4]
xor edx, edx
push eax
mov ecx, edi
call fcn.004b5720
add esp, 4
jmp case.0x4d5245.10
lea eax, [ebx + 4]
mov edx, 1
push eax
mov ecx, edi
call fcn.004b5720
add esp, 4
jmp case.0x4d5245.10
lea eax, [ebx + 4]
mov edx, 2
push eax
mov ecx, edi
call fcn.004b5720
add esp, 4
jmp case.0x4d5245.10
push dword [ebx - 0x1c]
lea eax, [ebx + 4]
mov edx, esi
push 0
sub esp, 8
mov ecx, edi
push eax
call fcn.004b1530
add esp, 0x14
jmp case.0x4d5245.10
mov eax, dword [edi]
mov byte [eax + 0xe2], 0
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
jmp case.0x4d5245.10
lea eax, [ebx + 4]
mov edx, esi
push 0
push eax
mov ecx, edi
call fcn.004b2950
add esp, 8
jmp case.0x4d5245.10
push dword [ebx + 4]
xor edx, edx
mov ecx, edi
push 0
call fcn.004b2950
add esp, 8
mov esi, dword [ebx + 4]
mov edi, dword [edi]
test esi, esi
je case.0x4d5245.10
mov edx, esi
mov ecx, edi
call fcn.004c1f40
push esi
push edi
call fcn.0048ae30
add esp, 8
jmp case.0x4d5245.10
mov eax, dword [edi + 0x1e0]
mov ecx, dword [ebx - 0x1c]
add eax, dword [edi + 0x1dc]
sub eax, ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
jmp case.0x4d5245.10
lea edx, [ebx + 4]
mov ecx, edi
call fcn.004b1cd0
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
jmp case.0x4d5245.10
mov eax, dword [edi + 0x1e8]
lea edx, [ebx + 4]
test eax, eax
je case.0x4d5245.10
mov ecx, dword [eax + 0xc]
cmp ecx, 1
jl case.0x4d5245.10
mov eax, dword [eax + 0x10]
lea ecx, [ecx + ecx*2]
mov edi, dword [edi]
lea eax, [eax + ecx*8]
mov dword [esp + 0x1c], eax
test edx, edx
je 0x4d5653
mov eax, dword [edx]
mov dword [esp + 0x20], eax
test eax, eax
jne 0x4d55ac
xor esi, esi
mov ecx, esi
call fcn.0048d2e0
mov eax, dword [esp + 0x1c]
jmp 0x4d5655
mov eax, dword [edx + 4]
mov dword [esp + 0x24], eax
lea ecx, [eax + 1]
test edi, edi
je 0x4d5615
cmp byte [edi + 0x1e], 0
je 0x4d55d2
xor esi, esi
mov ecx, esi
call fcn.0048d2e0
mov eax, dword [esp + 0x1c]
jmp 0x4d5655
cmp byte [edi + 0xe2], 0
je 0x4d5615
movzx eax, word [edi + 0xe0]
cmp ecx, eax
jg 0x4d5615
mov esi, dword [edi + 0xec]
test esi, esi
je 0x4d5615
mov eax, dword [esi]
mov dword [edi + 0xec], eax
mov eax, dword [edi + 0xe4]
inc eax
mov dword [edi + 0xe4], eax
cmp eax, dword [edi + 0xe8]
jle 0x4d5630
mov dword [edi + 0xe8], eax
jmp 0x4d5630
push ecx
call fcn.0048ad40
mov esi, eax
add esp, 4
test esi, esi
jne 0x4d5630
test edi, edi
je 0x4d562c
mov byte [edi + 0x1e], 1
test esi, esi
je 0x4d5646
mov edi, dword [esp + 0x24]
push edi
push dword [esp + 0x24]
push esi
call fcn.004de150
add esp, 0xc
mov byte [esi + edi], 0
mov ecx, esi
call fcn.0048d2e0
mov eax, dword [esp + 0x1c]
jmp 0x4d5655
xor esi, esi
mov ecx, esi
mov dword [eax - 0xc], esi
call fcn.004b1ef0
mov ecx, dword [esp + 0x1c]
mov byte [ecx - 2], al
jmp case.0x4d5245.10
mov eax, dword [ebx + 8]
mov ecx, dword [ebx - 0x2c]
add eax, dword [ebx + 4]
sub eax, ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
jmp case.0x4d5245.10
mov eax, dword [ebx + 8]
mov ecx, dword [ebx - 0x4c]
add eax, dword [ebx + 4]
sub eax, ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
jmp case.0x4d5245.10
mov eax, dword [ebx + 8]
mov ecx, dword [esi]
add eax, dword [ebx + 4]
sub eax, ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
jmp case.0x4d5245.10
lea edx, [ebx + 4]
mov ecx, edi
call fcn.004b1fb0
jmp case.0x4d5245.10
mov edx, esi
mov ecx, edi
call fcn.004b1fb0
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
mov edx, 0x9c
mov ecx, dword [edi]
push 1
push 0
mov dword [esp + 0x24], eax
call fcn.004a8030
mov edx, dword [esp + 0x24]
mov ecx, eax
mov eax, dword [edi]
add esp, 8
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
test ecx, ecx
jne 0x4d5711
mov ecx, eax
call fcn.004a8690
mov ecx, dword [esp + 0x24]
xor edx, edx
call fcn.004a8690
jmp 0x4d5732
test edx, edx
je 0x4d572d
mov eax, 0x100
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4d572d
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x28]
mov dword [esp + 0x28], eax
mov ecx, edi
mov eax, dword [esi]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x30], eax
call fcn.004b1fb0
jmp case.0x4d5245.10
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 1
push eax
mov edx, 0x5e
call fcn.004a8030
mov esi, eax
add esp, 8
mov eax, dword [edi]
mov dword [esp + 0x24], eax
test esi, esi
jne 0x4d578e
xor edx, edx
mov ecx, eax
call fcn.004a8690
mov ecx, dword [esp + 0x24]
xor edx, edx
call fcn.004a8690
jmp 0x4d5795
mov ecx, esi
call fcn.004a7fa0
mov ecx, dword [ebx + 4]
lea edx, [esp + 0x28]
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x2c], ecx
mov ecx, edi
mov dword [esp + 0x28], esi
mov dword [esp + 0x30], eax
call fcn.004b1fb0
jmp case.0x4d5245.10
mov ecx, dword [edi + 0x1e8]
test ecx, ecx
je case.0x4d5245.10
mov eax, dword [ecx + 0xc]
cmp eax, 1
jl case.0x4d5245.10
mov ecx, dword [ecx + 0x10]
lea edx, [eax + eax*2]
mov al, byte [ebx + 4]
mov byte [ecx + edx*8 - 4], al
jmp case.0x4d5245.10
push dword [ebx - 0x1c]
xor edx, edx
mov ecx, edi
push dword [ebx + 4]
push dword [esi]
call fcn.004b2140
add esp, 0xc
jmp case.0x4d5245.10
push 0
push 0
push 0
push 0
push dword [ebx + 4]
push 0
push 0
push 0
xor edx, edx
mov ecx, edi
call fcn.004b3810
add esp, 0x20
jmp case.0x4d5245.10
mov esi, dword [esi]
test esi, esi
je case.0x4d5245.10
mov edi, dword [edi]
mov edx, esi
mov ecx, edi
call fcn.004a8600
cmp word [esi + 2], 0
jl case.0x4d5245.10
push esi
push edi
call fcn.0048ae30
add esp, 8
jmp case.0x4d5245.10
mov esi, dword [esi]
xor edx, edx
mov edi, dword [edi]
mov ecx, edi
call fcn.004a9490
mov edx, esi
mov ecx, edi
call fcn.004a9490
jmp case.0x4d5245.10
lea edx, [ebx + 4]
mov ecx, edi
call fcn.004b2370
jmp case.0x4d5245.10
mov eax, dword [ebx + 8]
not eax
and eax, dword [esi]
or eax, dword [ebx + 4]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0xff
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
shl eax, 8
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0xff00
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 7
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 8
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 9
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 6
jmp case.0x4d5245.10
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], 0
jmp case.0x4d5245.10
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
jmp case.0x4d5245.10
mov edx, dword [ebx - 0x2c]
mov ecx, edi
push 0
push dword [ebx - 0x1c]
push dword [ebx + 4]
call fcn.004b2140
add esp, 0xc
jmp case.0x4d5245.10
push 0
push 0
push 0
push 0
push dword [ebx + 4]
push dword [ebx - 0x1c]
jmp 0x4d580b
mov esi, dword [ebx - 0x1c]
jmp 0x4d5822
mov esi, dword [ebx - 0x1c]
mov edx, dword [ebx - 0x5c]
jmp 0x4d5853
mov dword [esp + 0x3c], 0x63
jmp case.0x4d5245.10
mov byte [esp + 0x3c], 0x63
jmp case.0x4d5245.10
mov al, byte [ebx + 4]
mov byte [esp + 0x3c], al
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 4
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 5
jmp case.0x4d5245.10
push dword [esi]
mov edx, dword [ebx + 4]
mov ecx, edi
push 0
call fcn.004b2f80
add esp, 8
jmp case.0x4d5245.10
push dword [esi]
mov edx, dword [ebx + 4]
mov ecx, edi
push 1
call fcn.004b2f80
add esp, 8
jmp case.0x4d5245.10
mov edx, dword [ebx + 4]
lea eax, [esp + 0x28]
push eax
mov ecx, edi
mov word [esp + 0x2c], 5
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
call fcn.004ca660
add esp, 4
jmp 0x4d54fc
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x4d5a12
mov al, byte [esi]
mov byte [ecx + 4], al
mov ecx, dword [ebx + 4]
mov eax, dword [ebx - 0x1c]
mov dword [ecx + 0x1c], eax
mov eax, dword [ebx + 4]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov esi, dword [ebx - 0x1c]
mov edi, dword [edi]
test esi, esi
je case.0x4d5245.83
mov edx, esi
mov ecx, edi
call fcn.004c1f40
push esi
push edi
call fcn.0048ae30
add esp, 8
mov eax, dword [ebx + 4]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 0x70
jmp case.0x4d5245.10
push dword [ebx + 8]
mov edx, dword [ebx - 0x5c]
mov ecx, edi
push dword [ebx + 4]
push dword [ebx - 0x6c]
push dword [esi]
push dword [ebx - 0x1c]
push dword [ebx - 0x2c]
push dword [ebx - 0x3c]
push dword [ebx - 0x4c]
call fcn.004c1fb0
add esp, 0x20
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
push dword [esi]
mov edx, dword [ebx - 0x1c]
mov ecx, edi
call fcn.004a9250
add esp, 4
mov edx, eax
cmp dword [ebx + 8], 0
mov dword [esp + 0x3c], edx
jbe 0x4d5aa3
lea ecx, [ebx + 4]
push 1
push ecx
mov ecx, edi
call fcn.004a93b0
mov edx, dword [esp + 0x44]
add esp, 8
mov esi, dword [edi]
test edx, edx
je case.0x4d5245.10
mov eax, dword [edx]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0xc]
lea eax, [eax + ecx*4]
add eax, 0xfffffff4
mov dword [esp + 0x1c], eax
push dword [eax]
push esi
call fcn.0048ae30
mov ecx, dword [ebx - 8]
add esp, 8
mov dword [esp + 0x24], ecx
test ecx, ecx
jne 0x4d5ae2
mov eax, dword [esp + 0x1c]
xor edi, edi
mov dword [eax], edi
jmp case.0x4d5245.10
mov eax, dword [ebx - 4]
sub eax, ecx
mov dword [esp + 0x20], eax
lea edx, [eax + 1]
test esi, esi
je 0x4d5b48
cmp byte [esi + 0x1e], 0
je 0x4d5b05
mov eax, dword [esp + 0x1c]
xor edi, edi
mov dword [eax], edi
jmp case.0x4d5245.10
cmp byte [esi + 0xe2], 0
je 0x4d5b48
movzx eax, word [esi + 0xe0]
cmp edx, eax
jg 0x4d5b48
mov edi, dword [esi + 0xec]
test edi, edi
je 0x4d5b48
mov eax, dword [edi]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d5b67
mov dword [esi + 0xe8], eax
jmp 0x4d5b67
push edx
call fcn.0048ad40
mov edi, eax
add esp, 4
test edi, edi
jne 0x4d5b63
test esi, esi
je 0x4d5b5f
mov byte [esi + 0x1e], 1
test edi, edi
je 0x4d5b7a
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
push esi
push ecx
push edi
call fcn.004de150
add esp, 0xc
mov byte [esi + edi], 0
mov eax, dword [esp + 0x1c]
mov dword [eax], edi
jmp case.0x4d5245.10
mov ecx, dword [edi]
lea eax, [esp + 0x28]
push 0
push eax
mov edx, 0x70
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
call fcn.004a8030
mov edx, dword [esi]
mov ecx, edi
push eax
call fcn.004a9250
add esp, 0xc
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 1
push eax
mov edx, 0x70
call fcn.004a8030
mov esi, dword [edi]
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4d5bf1
xor edx, edx
mov ecx, esi
call fcn.004a8690
xor edx, edx
mov ecx, esi
call fcn.004a8690
jmp 0x4d5bf8
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [edi]
lea eax, [ebx - 0x1c]
push 1
push eax
mov edx, 0x1a
call fcn.004a8030
mov esi, dword [edi]
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4d5c2b
xor edx, edx
mov ecx, esi
call fcn.004a8690
xor edx, edx
mov ecx, esi
call fcn.004a8690
jmp 0x4d5c32
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [edi]
mov edx, 0x75
push 1
push 0
call fcn.004a8030
mov esi, eax
add esp, 8
mov eax, dword [edi]
mov dword [esp + 0x24], eax
test esi, esi
jne 0x4d5c6b
mov edx, dword [esp + 0x14]
mov ecx, eax
call fcn.004a8690
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
call fcn.004a8690
jmp 0x4d5cb2
mov edx, dword [esp + 0x1c]
mov eax, 0x100
test edx, edx
je 0x4d5c90
mov dword [esi + 0xc], edx
test word [edx + 2], ax
je 0x4d5c90
or word [esi + 2], ax
mov eax, dword [edx + 0x14]
mov dword [esi + 0x14], eax
mov eax, 0x100
mov edx, dword [esp + 0x14]
test edx, edx
je 0x4d5cab
mov dword [esi + 8], edx
test word [edx + 2], ax
je 0x4d5cab
or word [esi + 2], ax
mov eax, dword [edx + 0x14]
mov dword [esi + 0x14], eax
mov ecx, esi
call fcn.004a7fa0
mov edx, dword [ebx - 0x2c]
mov ecx, edi
push esi
call fcn.004a9250
add esp, 4
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov esi, dword [edi]
test esi, esi
je 0x4d5d26
cmp byte [esi + 0x1e], 0
je 0x4d5ce0
xor edi, edi
mov dword [esp + 0x3c], edi
jmp case.0x4d5245.10
cmp byte [esi + 0xe2], 0
je 0x4d5d26
mov eax, 0x40
cmp ax, word [esi + 0xe0]
ja 0x4d5d26
mov edi, dword [esi + 0xec]
test edi, edi
je 0x4d5d26
mov eax, dword [edi]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d5d42
mov dword [esi + 0xe8], eax
jmp 0x4d5d42
push 0x40
call fcn.0048ad40
mov edi, eax
add esp, 4
test edi, edi
jne 0x4d5d42
test esi, esi
je 0x4d5d3e
mov byte [esi + 0x1e], 1
test edi, edi
je 0x4d5d4f
push 0x40
push 0
push edi
call fcn.004de6d0
add esp, 0xc
mov dword [esp + 0x3c], edi
jmp case.0x4d5245.10
mov esi, dword [ebx + 4]
mov dword [esp + 0x3c], esi
test esi, esi
je case.0x4d5245.10
lea eax, [esi + 8]
test eax, eax
je case.0x4d5245.10
movsx ecx, word [esi]
dec ecx
test ecx, ecx
jle 0x4d5d96
lea edx, [ecx*8]
sub edx, ecx
shl edx, 3
mov al, byte [esi + edx - 0x1b]
lea edx, [edx - 0x38]
dec ecx
mov byte [esi + edx + 0x55], al
test ecx, ecx
jg 0x4d5d86
mov byte [esi + 0x1d], 0
jmp case.0x4d5245.10
mov edx, dword [esi]
mov dword [esp + 0x3c], edx
test edx, edx
je case.0x4d5245.10
movzx eax, word [edx]
test ax, ax
jle case.0x4d5245.10
cwde
lea ecx, [eax*8]
sub ecx, eax
mov al, byte [ebx + 4]
mov byte [edx + ecx*8 - 0x1b], al
jmp case.0x4d5245.10
push dword [ebx + 4]
mov edx, dword [ebx - 0x5c]
lea eax, [ebx - 0x2c]
push dword [esi]
mov ecx, edi
push 0
push eax
lea eax, [ebx - 0x3c]
push eax
lea eax, [ebx - 0x4c]
push eax
call fcn.004b5490
lea ecx, [ebx - 0x1c]
mov dword [esp + 0x54], eax
push ecx
mov edx, eax
mov ecx, edi
call fcn.004b5620
add esp, 0x1c
jmp case.0x4d5245.10
push dword [ebx + 4]
mov edx, dword [ebx - 0x5c]
lea eax, [ebx - 0x1c]
push dword [esi]
mov ecx, edi
push dword [ebx - 0x3c]
push eax
push 0
push 0
call fcn.004b5490
add esp, 0x18
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
cmp dword [ebx - 0x5c], 0
jne 0x4d5e4e
cmp dword [ebx - 0x18], 0
jne 0x4d5e4e
cmp dword [esi], 0
jne 0x4d5e4e
cmp dword [ebx + 4], 0
jne 0x4d5e4e
mov eax, dword [ebx - 0x3c]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov ecx, dword [ebx - 0x3c]
test ecx, ecx
je 0x4d5e89
lea eax, [ecx + 8]
test eax, eax
je 0x4d5e89
movsx edx, word [ecx]
dec edx
test edx, edx
jle 0x4d5e85
lea eax, [edx*8]
sub eax, edx
lea esi, [ecx + 0x1d]
lea esi, [esi + eax*8]
mov al, byte [esi - 0x38]
lea esi, [esi - 0x38]
dec edx
mov byte [esi + 0x38], al
test edx, edx
jg 0x4d5e73
mov esi, dword [esp + 0x24]
mov byte [ecx + 0x1d], 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebx - 0x3c]
xor edx, edx
mov ecx, edi
call fcn.004c1fb0
push dword [ebx + 4]
mov edx, dword [ebx - 0x5c]
mov ecx, edi
push dword [esi]
push eax
lea eax, [ebx - 0x1c]
push eax
push 0
push 0
call fcn.004b5490
add esp, 0x38
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov ecx, dword [edi]
lea eax, [ebx + 4]
push eax
push esi
xor edx, edx
call fcn.004b4df0
add esp, 8
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
push 0
push 0
mov edx, esi
mov ecx, edi
call fcn.004c2140
add esp, 8
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
push 0
push esi
lea edx, [ebx - 0x1c]
mov ecx, edi
call fcn.004c2140
add esp, 8
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
lea eax, [ebx - 0x1c]
mov ecx, edi
push esi
push eax
lea edx, [ebx - 0x2c]
call fcn.004c2140
add esp, 8
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 1
jmp case.0x4d5245.10
push dword [esi]
mov edx, dword [ebx - 0x2c]
mov ecx, edi
call fcn.004a9250
add esp, 4
mov dword [esp + 0x3c], eax
test eax, eax
je case.0x4d5245.10
mov ecx, dword [eax]
lea edx, [ecx + ecx*4]
mov ecx, dword [eax + 0xc]
mov al, byte [ebx + 4]
mov byte [ecx + edx*4 - 8], al
jmp case.0x4d5245.10
push dword [esi]
xor edx, edx
mov ecx, edi
call fcn.004a9250
add esp, 4
mov dword [esp + 0x3c], eax
test eax, eax
je case.0x4d5245.10
mov ecx, dword [eax + 0xc]
test ecx, ecx
je case.0x4d5245.10
mov al, byte [ebx + 4]
mov byte [ecx + 0xc], al
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0
jmp case.0x4d5245.10
mov eax, dword [ebx - 0x1c]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx + 4]
mov dword [esp + 0x40], eax
jmp case.0x4d5245.10
mov eax, dword [ebx - 0x1c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 4]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov edx, dword [ebx - 0x1c]
mov ecx, edi
push esi
call fcn.004b5620
mov edx, dword [ebx - 0x1c]
add esp, 4
mov ecx, edi
push dword [ebx + 4]
call fcn.004b6760
add esp, 4
jmp case.0x4d5245.10
mov edx, dword [ebx - 0x3c]
lea eax, [ebx - 0x2c]
push eax
mov ecx, edi
call fcn.004b5620
mov eax, dword [esi]
add esp, 4
test eax, eax
je 0x4d6032
mov ecx, dword [edi]
mov eax, dword [eax]
cmp eax, dword [ecx + 0x50]
jle 0x4d6032
push str.set_list
push str.too_many_columns_in__s
push edi
call fcn.0048d250
add esp, 0xc
movzx eax, byte [ebx - 0x4c]
mov ecx, edi
mov edx, dword [ebx - 0x3c]
push eax
push dword [ebx + 4]
push dword [esi]
call fcn.004cc510
add esp, 0xc
jmp case.0x4d5245.10
mov edx, dword [ebx - 0x3c]
push dword [ebx + 4]
mov ecx, edi
call fcn.004a9250
add esp, 4
mov dword [esp + 0x3c], eax
lea ecx, [ebx - 0x1c]
mov edx, eax
push 1
push ecx
mov ecx, edi
call fcn.004a93b0
add esp, 8
jmp case.0x4d5245.10
xor edx, edx
jmp 0x4d6051
movzx eax, byte [ebx - 0x6c]
mov ecx, edi
mov edx, dword [ebx - 0x4c]
push eax
push dword [ebx - 0x3c]
push 0
push dword [esi]
call fcn.004ba0f0
add esp, 0x10
jmp case.0x4d5245.10
movzx eax, byte [ebx - 0x3c]
mov ecx, edi
mov edx, dword [ebx - 0x1c]
push eax
push dword [esi]
push dword [ebx + 4]
push 0
call fcn.004ba0f0
add esp, 0x10
jmp case.0x4d5245.10
movzx eax, byte [ebx - 0x4c]
mov ecx, edi
mov edx, dword [ebx - 0x2c]
push eax
push dword [ebx - 0x1c]
push 0
push 0
call fcn.004ba0f0
add esp, 0x10
jmp case.0x4d5245.10
mov byte [esp + 0x3c], 5
jmp case.0x4d5245.10
push dword [ebx + 4]
mov edx, dword [ebx - 0x1c]
mov ecx, edi
call fcn.004a9250
add esp, 4
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
push dword [ebx + 4]
xor edx, edx
mov ecx, edi
call fcn.004a9250
add esp, 4
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov eax, dword [ebx - 0x1c]
mov esi, dword [edi]
mov edi, eax
test edi, edi
jne 0x4d61a8
test esi, esi
je 0x4d6175
cmp byte [esi + 0x1e], al
jne 0x4d61d7
cmp byte [esi + 0xe2], al
je 0x4d6175
mov eax, 0xc
cmp ax, word [esi + 0xe0]
ja 0x4d6175
mov ecx, dword [esi + 0xec]
test ecx, ecx
je 0x4d6175
mov eax, dword [ecx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d6171
mov dword [esi + 0xe8], eax
mov edi, ecx
jmp 0x4d6193
push 0xc
call fcn.0048ad40
mov edi, eax
add esp, 4
test edi, edi
jne 0x4d618d
test esi, esi
je 0x4d618d
mov byte [esi + 0x1e], 1
mov ecx, edi
test edi, edi
je 0x4d61d7
xorps xmm0, xmm0
movq qword [ecx], xmm0
mov dword [ecx + 8], 0
mov dword [ecx + 8], 0
mov edx, dword [edi]
lea eax, [esp + 0x1c]
push eax
lea eax, [edi + 8]
mov ecx, esi
push eax
lea eax, [edi + 4]
push eax
push 5
push 8
call fcn.004b49b0
add esp, 0x14
mov dword [edi], eax
cmp dword [esp + 0x1c], 0
jge 0x4d61e2
mov edx, edi
mov ecx, esi
call fcn.004b4a60
xor edi, edi
mov dword [esp + 0x3c], edi
jmp case.0x4d5245.10
lea eax, [ebx + 4]
test eax, eax
je 0x4d62e6
mov ecx, dword [eax]
mov dword [esp + 0x20], ecx
test ecx, ecx
jne 0x4d6216
mov dword [esp + 0x14], ecx
call fcn.0048d2e0
mov eax, dword [edi]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
mov eax, dword [eax + 4]
mov dword [esp + 0x24], eax
lea edx, [eax + 1]
test esi, esi
je 0x4d6292
cmp byte [esi + 0x1e], 0
je 0x4d624b
xor ecx, ecx
mov dword [esp + 0x14], ecx
call fcn.0048d2e0
mov eax, dword [edi]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
cmp byte [esi + 0xe2], 0
je 0x4d6292
movzx eax, word [esi + 0xe0]
cmp edx, eax
jg 0x4d6292
mov ecx, dword [esi + 0xec]
mov dword [esp + 0x14], ecx
test ecx, ecx
je 0x4d6292
mov eax, dword [ecx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d62b1
mov dword [esi + 0xe8], eax
jmp 0x4d62b1
push edx
call fcn.0048ad40
mov ecx, eax
add esp, 4
mov dword [esp + 0x14], ecx
test ecx, ecx
jne 0x4d62b1
test esi, esi
je 0x4d62ad
mov byte [esi + 0x1e], 1
test ecx, ecx
je 0x4d62cb
mov esi, dword [esp + 0x24]
push esi
push dword [esp + 0x24]
push ecx
call fcn.004de150
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov byte [esi + ecx], 0
call fcn.0048d2e0
mov eax, dword [edi]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
mov eax, dword [edi]
xor ecx, ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
mov esi, dword [edi]
test esi, esi
je 0x4d6350
cmp byte [esi + 0x1e], 0
jne 0x4d63af
cmp byte [esi + 0xe2], 0
je 0x4d6350
mov eax, 0xc
cmp ax, word [esi + 0xe0]
ja 0x4d6350
mov edi, dword [esi + 0xec]
test edi, edi
je 0x4d6350
mov eax, dword [edi]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d636c
mov dword [esi + 0xe8], eax
jmp 0x4d636c
push 0xc
call fcn.0048ad40
mov edi, eax
add esp, 4
test edi, edi
jne 0x4d636c
test esi, esi
je 0x4d6368
mov byte [esi + 0x1e], 1
test edi, edi
je 0x4d63af
xorps xmm0, xmm0
lea ecx, [esp + 0x1c]
push ecx
movq qword [edi], xmm0
lea eax, [edi + 8]
push eax
mov dword [edi + 8], 0
mov ecx, esi
mov dword [eax], 0
lea eax, [edi + 4]
mov edx, dword [edi]
push eax
push 5
push 8
call fcn.004b49b0
add esp, 0x14
mov dword [edi], eax
cmp dword [esp + 0x1c], 0
jge 0x4d63ba
mov edx, edi
mov ecx, esi
call fcn.004b4a60
xor edi, edi
mov dword [esp + 0x3c], edi
jmp case.0x4d5245.10
lea eax, [ebx + 4]
test eax, eax
je 0x4d64be
mov ecx, dword [eax]
mov dword [esp + 0x20], ecx
test ecx, ecx
jne 0x4d63ee
mov dword [esp + 0x14], ecx
call fcn.0048d2e0
mov eax, dword [edi]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
mov eax, dword [eax + 4]
mov dword [esp + 0x24], eax
lea edx, [eax + 1]
test esi, esi
je 0x4d646a
cmp byte [esi + 0x1e], 0
je 0x4d6423
xor ecx, ecx
mov dword [esp + 0x14], ecx
call fcn.0048d2e0
mov eax, dword [edi]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
cmp byte [esi + 0xe2], 0
je 0x4d646a
movzx eax, word [esi + 0xe0]
cmp edx, eax
jg 0x4d646a
mov ecx, dword [esi + 0xec]
mov dword [esp + 0x14], ecx
test ecx, ecx
je 0x4d646a
mov eax, dword [ecx]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
inc eax
mov dword [esi + 0xe4], eax
cmp eax, dword [esi + 0xe8]
jle 0x4d6489
mov dword [esi + 0xe8], eax
jmp 0x4d6489
push edx
call fcn.0048ad40
mov ecx, eax
add esp, 4
mov dword [esp + 0x14], ecx
test ecx, ecx
jne 0x4d6489
test esi, esi
je 0x4d6485
mov byte [esi + 0x1e], 1
test ecx, ecx
je 0x4d64a3
mov esi, dword [esp + 0x24]
push esi
push dword [esp + 0x24]
push ecx
call fcn.004de150
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov byte [esi + ecx], 0
call fcn.0048d2e0
mov eax, dword [edi]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
mov eax, dword [edi]
xor ecx, ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x3c], edi
mov dword [eax + edx*8], ecx
jmp case.0x4d5245.10
movq xmm0, qword [ebx + 4]
mov eax, dword [ebx + 0xc]
movq qword [esp + 0x3c], xmm0
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov eax, dword [esi]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx - 0x1c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
movzx edx, byte [ebx + 2]
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 1
push eax
call fcn.004a8030
mov edi, dword [edi]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4d6535
xor edx, edx
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
jmp 0x4d653c
mov ecx, esi
call fcn.004a7fa0
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov edx, 0x1a
jmp 0x4d6509
mov ecx, dword [edi]
lea eax, [ebx - 0x1c]
push 1
push eax
mov edx, 0x1a
call fcn.004a8030
mov esi, dword [edi]
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4d658f
xor edx, edx
mov ecx, esi
call fcn.004a8690
xor edx, edx
mov ecx, esi
call fcn.004a8690
jmp 0x4d6596
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 1
push eax
mov edx, 0x1a
call fcn.004a8030
mov esi, dword [edi]
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4d65c9
xor edx, edx
mov ecx, esi
call fcn.004a8690
xor edx, edx
mov ecx, esi
call fcn.004a8690
jmp 0x4d65d0
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [edi]
mov edx, 0x75
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4d660a
mov edx, dword [esp + 0x14]
mov ecx, edi
call fcn.004a8690
mov edx, dword [esp + 0x1c]
mov ecx, edi
call fcn.004a8690
mov dword [esp + 0x3c], esi
jmp 0x4d64ef
mov edx, dword [esp + 0x1c]
mov eax, 0x100
test edx, edx
je 0x4d662f
mov dword [esi + 0xc], edx
test word [edx + 2], ax
je 0x4d662f
or word [esi + 2], ax
mov eax, dword [edx + 0x14]
mov dword [esi + 0x14], eax
mov eax, 0x100
mov edx, dword [esp + 0x14]
test edx, edx
je 0x4d664a
mov dword [esi + 8], edx
test word [edx + 2], ax
je 0x4d664a
or word [esi + 2], ax
mov eax, dword [edx + 0x14]
mov dword [esi + 0x14], eax
mov ecx, esi
call fcn.004a7fa0
mov dword [esp + 0x3c], esi
jmp 0x4d64ef
mov ecx, dword [edi]
lea eax, [ebx - 0x3c]
push 1
push eax
mov edx, 0x1a
call fcn.004a8030
mov esi, dword [edi]
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
jne 0x4d668d
xor edx, edx
mov ecx, esi
call fcn.004a8690
xor edx, edx
mov ecx, esi
call fcn.004a8690
jmp 0x4d6694
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [edi]
lea eax, [ebx - 0x1c]
push 1
push eax
mov edx, 0x1a
call fcn.004a8030
mov esi, dword [edi]
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4d66c7
xor edx, edx
mov ecx, esi
call fcn.004a8690
xor edx, edx
mov ecx, esi
call fcn.004a8690
jmp 0x4d66ce
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 1
push eax
mov edx, 0x1a
call fcn.004a8030
mov esi, dword [edi]
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4d6701
xor edx, edx
mov ecx, esi
call fcn.004a8690
xor edx, edx
mov ecx, esi
call fcn.004a8690
jmp 0x4d6708
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [edi]
mov edx, 0x75
push 1
push 0
call fcn.004a8030
mov ecx, eax
add esp, 8
mov eax, dword [edi]
mov esi, 0x100
mov dword [esp + 0x20], ecx
mov dword [esp + 0x28], eax
test ecx, ecx
jne 0x4d674a
mov edx, dword [esp + 0x14]
mov ecx, eax
call fcn.004a8690
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
call fcn.004a8690
jmp 0x4d6785
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4d6765
mov dword [ecx + 0xc], eax
test word [eax + 2], si
je 0x4d6765
or word [ecx + 2], si
mov eax, dword [eax + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4d6780
mov dword [ecx + 8], eax
test word [eax + 2], si
je 0x4d6780
or word [ecx + 2], si
mov eax, dword [eax + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov ecx, dword [edi]
mov edx, 0x75
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov ecx, eax
add esp, 8
mov dword [esp + 0x28], ecx
test ecx, ecx
jne 0x4d67d8
mov edx, dword [esp + 0x24]
mov ecx, edi
call fcn.004a8690
mov edx, dword [esp + 0x20]
mov ecx, edi
call fcn.004a8690
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx - 0x3c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4d67f3
mov dword [ecx + 0xc], eax
test word [eax + 2], si
je 0x4d67f3
or word [ecx + 2], si
mov eax, dword [eax + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4d680e
mov dword [ecx + 8], eax
test word [eax + 2], si
je 0x4d680e
or word [ecx + 2], si
mov eax, dword [eax + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx - 0x3c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
cmp byte [edi + 0x13], 0
lea eax, [ebx + 4]
jne 0x4d6866
push eax
push str.near___T_:_syntax_error
push edi
call fcn.0048d250
mov ecx, dword [ebx + 4]
add esp, 0xc
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, dword [edi]
mov edx, 0x84
push 1
push eax
call fcn.004a8030
mov edi, dword [edi]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4d68ab
xor edx, edx
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, esi
call fcn.004a7fa0
mov ecx, dword [ebx + 4]
lea edx, [esi + 0x18]
inc ecx
mov dword [esp + 0x3c], esi
call fcn.0048db60
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 1
push eax
mov edx, 0x85
call fcn.004a8030
mov esi, eax
add esp, 8
mov eax, dword [edi]
mov dword [esp + 0x28], eax
test esi, esi
jne 0x4d690e
xor edx, edx
mov ecx, eax
call fcn.004a8690
mov ecx, dword [esp + 0x28]
xor edx, edx
call fcn.004a8690
jmp 0x4d6915
mov ecx, esi
call fcn.004a7fa0
mov edx, esi
mov dword [esp + 0x3c], esi
mov ecx, edi
call fcn.004a83f0
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov edx, dword [ebx - 0x1c]
lea esi, [ebx + 4]
push esi
mov ecx, edi
call fcn.004a7a50
mov dword [esp + 0x40], eax
add esp, 4
mov eax, dword [ebx - 0x18]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [esi]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov eax, dword [ebx - 0x2c]
mov edx, 0x25
mov ecx, dword [edi]
push 1
push esi
mov dword [esp + 0x2c], eax
call fcn.004a8030
mov edi, dword [edi]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4d69b0
mov edx, dword [esp + 0x24]
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
mov eax, dword [ebx - 0x4c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4d69d0
mov eax, 0x100
mov dword [esi + 8], ecx
test word [ecx + 2], ax
je 0x4d69d0
or word [esi + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x14], eax
mov ecx, esi
call fcn.004a7fa0
mov eax, dword [ebx - 0x4c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov eax, dword [esi]
test eax, eax
je 0x4d6a12
mov ecx, dword [edi]
mov eax, dword [eax]
cmp eax, dword [ecx + 0x60]
jle 0x4d6a12
lea eax, [ebx - 0x3c]
push eax
push str.too_many_arguments_on_function__T
push edi
call fcn.0048d250
add esp, 0xc
mov edx, dword [esp + 0x24]
lea esi, [ebx - 0x3c]
push esi
mov ecx, edi
mov edx, dword [edx]
call fcn.004a8380
mov ecx, dword [esi]
add esp, 4
mov dword [esp + 0x40], ecx
mov ecx, dword [ebx + 8]
add ecx, dword [ebx + 4]
cmp dword [ebx - 0x1c], 0
mov dword [esp + 0x3c], eax
mov dword [esp + 0x44], ecx
je case.0x4d5245.10
test eax, eax
je case.0x4d5245.10
or word [eax + 2], 0x10
jmp case.0x4d5245.10
lea esi, [ebx - 0x2c]
xor edx, edx
push esi
mov ecx, edi
call fcn.004a8380
mov dword [esp + 0x40], eax
add esp, 4
mov eax, dword [esi]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
lea esi, [ebx + 4]
xor edx, edx
push esi
mov ecx, edi
call fcn.004a8380
add esp, 4
mov dword [esp + 0x3c], eax
test eax, eax
je 0x4d6a9a
mov byte [eax], 0x9b
mov ecx, dword [esi]
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
lea eax, [ebx + 4]
mov edx, edi
push eax
lea eax, [ebx - 0x1c]
push eax
movzx eax, byte [ebx - 0xe]
lea ecx, [esp + 0x44]
push eax
call fcn.004d4e00
add esp, 0xc
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], 0
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], 1
jmp case.0x4d5245.10
xorps xmm0, xmm0
mov dword [esp + 0x44], 0
movq qword [esp + 0x3c], xmm0
jmp case.0x4d5245.10
push dword [esi]
xor edx, edx
mov ecx, edi
call fcn.004a9250
add esp, 4
mov edx, eax
mov ecx, edi
push dword [ebx - 0x2c]
call fcn.004a9250
mov edx, eax
add esp, 4
mov eax, dword [ebx + 4]
test eax, eax
je 0x4d6b4d
push eax
mov ecx, edi
call fcn.004a9250
add esp, 4
mov edx, eax
lea eax, [ebx - 0x1c]
mov ecx, edi
push eax
call fcn.004a8380
add esp, 4
mov esi, eax
cmp dword [ebx - 0x14], 0
mov dword [esp + 0x3c], esi
je 0x4d6bc3
mov ecx, dword [edi]
mov edx, 0x13
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov ecx, eax
add esp, 8
mov dword [esp + 0x28], ecx
test ecx, ecx
jne 0x4d6b9a
mov edx, esi
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
jmp 0x4d6bbb
test esi, esi
je 0x4d6bb6
mov eax, 0x100
mov dword [ecx + 8], esi
test word [esi + 2], ax
je 0x4d6bb6
or word [ecx + 2], ax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov esi, dword [esp + 0x28]
mov dword [esp + 0x3c], esi
mov eax, dword [ebx - 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [ebx - 4]
mov dword [esp + 0x44], eax
test esi, esi
je case.0x4d5245.10
mov eax, 0x80
or word [esi + 2], ax
jmp case.0x4d5245.10
lea eax, [ebx + 4]
mov edx, edi
push eax
movzx eax, byte [ebx + 2]
lea ecx, [esp + 0x40]
push esi
push eax
call fcn.004d4eb0
add esp, 0xc
jmp case.0x4d5245.10
lea eax, [ebx + 4]
mov edx, edi
push eax
lea eax, [ebx - 0x1c]
push eax
push 0x4a
lea ecx, [esp + 0x48]
call fcn.004d4eb0
add esp, 0xc
jmp case.0x4d5245.10
lea esi, [ebx + 4]
mov edx, edi
push esi
lea eax, [ebx - 0x1c]
push eax
push 0x46
lea ecx, [esp + 0x48]
call fcn.004d4e00
mov eax, dword [edi]
add esp, 0xc
cmp byte [eax + 0x1e], 0
jne case.0x4d5245.10
mov eax, dword [esi]
cmp byte [eax], 0x62
jne case.0x4d5245.10
mov eax, dword [esp + 0x3c]
mov byte [eax], 0x49
jmp case.0x4d5245.10
lea esi, [ebx + 4]
mov edx, edi
push esi
lea eax, [ebx - 0x2c]
push eax
push 0x92
lea ecx, [esp + 0x48]
call fcn.004d4e00
mov eax, dword [edi]
add esp, 0xc
cmp byte [eax + 0x1e], 0
jne case.0x4d5245.10
mov eax, dword [esi]
cmp byte [eax], 0x62
jne case.0x4d5245.10
mov eax, dword [esp + 0x3c]
mov byte [eax], 0x4a
jmp case.0x4d5245.10
push esi
lea eax, [ebx + 4]
mov edx, edi
push eax
movzx eax, byte [ebx - 0xe]
lea ecx, [esp + 0x44]
push eax
call fcn.004d4f40
add esp, 0xc
jmp case.0x4d5245.10
push esi
lea eax, [ebx + 4]
mov edx, edi
push eax
push 0x9c
lea ecx, [esp + 0x48]
call fcn.004d4f40
add esp, 0xc
jmp case.0x4d5245.10
push esi
lea eax, [ebx + 4]
mov edx, edi
push eax
push 0x9d
lea ecx, [esp + 0x48]
call fcn.004d4f40
add esp, 0xc
jmp case.0x4d5245.10
push dword [ebx - 0x1c]
xor edx, edx
mov ecx, edi
call fcn.004a9250
add esp, 4
mov edx, eax
mov ecx, edi
push dword [ebx + 4]
call fcn.004a9250
mov ecx, dword [edi]
add esp, 4
mov dword [esp + 0x20], eax
mov edx, 0x47
mov eax, dword [ebx - 0x3c]
mov dword [esp + 0x24], eax
push 1
push 0
call fcn.004a8030
mov ecx, eax
add esp, 8
mov eax, dword [edi]
mov esi, 0x100
mov dword [esp + 0x14], ecx
mov dword [esp + 0x28], eax
test ecx, ecx
jne 0x4d6d6d
mov edx, dword [esp + 0x24]
mov ecx, eax
call fcn.004a8690
mov ecx, dword [esp + 0x28]
xor edx, edx
call fcn.004a8690
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov ecx, dword [edi]
mov dword [esp + 0x3c], eax
call fcn.004a9490
jmp 0x4d6d9c
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4d6d88
mov dword [ecx + 8], eax
test word [eax + 2], si
je 0x4d6d88
or word [ecx + 2], si
mov eax, dword [eax + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x3c], eax
mov dword [eax + 0x10], ecx
cmp dword [ebx - 0x2c], 0
je 0x4d6dff
mov ecx, dword [edi]
mov edx, 0x13
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov ecx, eax
add esp, 8
mov dword [esp + 0x28], ecx
test ecx, ecx
jne 0x4d6dd7
mov edx, dword [esp + 0x14]
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
jmp 0x4d6df7
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4d6df2
mov dword [ecx + 8], eax
test word [eax + 2], si
je 0x4d6df2
or word [ecx + 2], si
mov eax, dword [eax + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov eax, dword [ebx - 0x3c]
mov edx, 0x48
mov ecx, dword [edi]
push 1
push 0
mov dword [esp + 0x28], eax
call fcn.004a8030
mov edx, dword [esp + 0x28]
mov ecx, eax
mov eax, dword [edi]
add esp, 8
mov dword [esp + 0x24], eax
mov eax, 0x100
mov dword [esp + 0x14], ecx
test ecx, ecx
jne 0x4d6e6e
mov ecx, dword [esp + 0x24]
call fcn.004a8690
mov ecx, dword [esp + 0x24]
xor edx, edx
call fcn.004a8690
mov eax, dword [esp + 0x14]
mov edx, dword [esi]
mov ecx, dword [edi]
mov dword [esp + 0x3c], eax
call fcn.004a9490
xor esi, esi
jmp 0x4d6ebb
test edx, edx
je 0x4d6e85
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4d6e85
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
mov eax, dword [esi]
mov esi, dword [esp + 0x14]
mov ecx, esi
mov dword [esi + 0x10], eax
call fcn.004a7fa0
mov eax, dword [edi]
mov eax, dword [eax + 0x54]
cmp dword [esi + 0x38], eax
jle 0x4d6ebb
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.0048d250
add esp, 0xc
cmp dword [ebx - 0x2c], 0
je 0x4d6f39
mov ecx, dword [edi]
mov edx, 0x13
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov ecx, eax
add esp, 8
mov dword [esp + 0x28], ecx
test ecx, ecx
jne 0x4d6f10
mov edx, esi
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
test esi, esi
je 0x4d6f2c
mov eax, 0x100
mov dword [ecx + 8], esi
test word [esi + 2], ax
je 0x4d6f2c
or word [ecx + 2], ax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx - 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, dword [edi]
mov edx, 0x73
push 1
push 0
call fcn.004a8030
mov ecx, dword [edi]
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x28], ecx
test eax, eax
jne 0x4d6fae
xor edx, edx
call fcn.004a8690
mov ecx, dword [esp + 0x28]
xor edx, edx
call fcn.004a8690
mov esi, dword [esi]
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
mov dword [esp + 0x3c], eax
test esi, esi
je 0x4d64ef
mov edx, esi
mov ecx, edi
call fcn.004c1f40
push esi
push edi
call fcn.0048ae30
add esp, 8
jmp 0x4d64ef
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [esp + 0x14]
mov eax, dword [esi]
mov dword [esp + 0x3c], ecx
mov dword [ecx + 0x10], eax
mov eax, 0x1000
or word [ecx + 2], ax
call fcn.004a7fa0
mov eax, dword [edi]
mov ecx, dword [eax + 0x54]
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x38], ecx
jle 0x4d64ef
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.0048d250
add esp, 0xc
jmp 0x4d64ef
mov eax, dword [ebx - 0x3c]
mov edx, 0x48
mov ecx, dword [edi]
push 1
push 0
mov dword [esp + 0x28], eax
call fcn.004a8030
mov edx, dword [esp + 0x28]
mov ecx, eax
mov eax, dword [edi]
add esp, 8
mov dword [esp + 0x24], eax
mov eax, 0x100
mov dword [esp + 0x14], ecx
test ecx, ecx
jne 0x4d7070
mov ecx, dword [esp + 0x24]
call fcn.004a8690
mov ecx, dword [esp + 0x24]
xor edx, edx
call fcn.004a8690
mov eax, dword [esp + 0x14]
mov ecx, dword [edi]
mov dword [esp + 0x3c], eax
mov eax, dword [esi]
xor esi, esi
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], ecx
test eax, eax
je 0x4d70c6
mov edx, eax
call fcn.004c1f40
push dword [esp + 0x28]
push dword [esp + 0x28]
call fcn.0048ae30
add esp, 8
jmp 0x4d70c6
test edx, edx
je 0x4d7087
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4d7087
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
mov eax, dword [esi]
mov esi, dword [esp + 0x14]
mov ecx, esi
mov dword [esi + 0x10], eax
mov eax, 0x1000
or word [esi + 2], ax
call fcn.004a7fa0
mov eax, dword [edi]
mov eax, dword [eax + 0x54]
cmp dword [esi + 0x38], eax
jle 0x4d70c6
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.0048d250
add esp, 0xc
cmp dword [ebx - 0x2c], 0
je 0x4d6f39
mov ecx, dword [edi]
mov edx, 0x13
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov ecx, eax
add esp, 8
mov dword [esp + 0x28], ecx
test ecx, ecx
je 0x4d6ee0
jmp 0x4d6f10
mov ecx, dword [edi]
lea eax, [ebx + 4]
push eax
push esi
xor edx, edx
call fcn.004b4df0
mov ecx, dword [edi]
mov edx, 0x48
mov dword [esp + 0x24], eax
mov eax, dword [ebx - 0x2c]
push 1
push 0
mov dword [esp + 0x30], eax
call fcn.004a8030
mov edx, dword [esp + 0x30]
mov ecx, eax
mov eax, dword [edi]
add esp, 0x10
mov dword [esp + 0x24], eax
mov eax, 0x100
mov dword [esp + 0x14], ecx
test ecx, ecx
jne 0x4d716e
mov ecx, dword [esp + 0x24]
call fcn.004a8690
mov ecx, dword [esp + 0x24]
xor edx, edx
call fcn.004a8690
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ecx, dword [edi]
mov dword [esp + 0x3c], eax
call fcn.004b50c0
mov dword [esp + 0x14], 0
jmp 0x4d71e2
test edx, edx
je 0x4d7185
mov dword [ecx + 8], edx
test word [edx + 2], ax
je 0x4d7185
or word [ecx + 2], ax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x14], eax
call fcn.004a7fa0
mov eax, dword [esp + 0x14]
xor edx, edx
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x38]
mov ecx, edi
mov dword [esp + 0x5c], eax
call fcn.004c1fb0
mov ecx, dword [esp + 0x34]
add esp, 0x20
mov dword [ecx + 0x10], eax
mov eax, 0x1000
or word [ecx + 2], ax
call fcn.004a7fa0
mov eax, dword [edi]
mov ecx, dword [eax + 0x54]
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x38], ecx
jle 0x4d71e2
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.0048d250
add esp, 0xc
cmp dword [ebx - 0x1c], 0
je 0x4d724c
mov ecx, dword [edi]
mov edx, 0x13
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov edx, eax
add esp, 8
mov dword [esp + 0x28], edx
test edx, edx
jne 0x4d721d
mov edx, dword [esp + 0x14]
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
jmp 0x4d7244
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x4d723d
mov eax, 0x100
mov dword [edx + 8], ecx
test word [ecx + 2], ax
je 0x4d723d
or word [edx + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [edx + 0x14], eax
mov ecx, edx
call fcn.004a7fa0
mov eax, dword [esp + 0x28]
mov dword [esp + 0x3c], eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebx - 0x28]
mov dword [esp + 0x40], eax
test ecx, ecx
je 0x4d7268
mov eax, dword [ebx + 8]
add eax, ecx
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov eax, dword [ebx - 8]
add eax, dword [esi]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, dword [edi]
mov edx, 0x14
push 1
push 0
call fcn.004a8030
mov ecx, dword [edi]
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x28], ecx
test eax, eax
jne 0x4d72e2
xor edx, edx
call fcn.004a8690
mov ecx, dword [esp + 0x28]
xor edx, edx
call fcn.004a8690
mov esi, dword [esi]
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
mov dword [esp + 0x3c], eax
test esi, esi
je 0x4d7321
mov edx, esi
mov ecx, edi
call fcn.004c1f40
push esi
push edi
call fcn.0048ae30
mov eax, dword [ebx - 0x2c]
add esp, 8
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, eax
call fcn.004a7fa0
mov ecx, dword [esp + 0x14]
mov eax, dword [esi]
mov dword [esp + 0x3c], ecx
mov dword [ecx + 0x10], eax
mov eax, 0x1000
or word [ecx + 2], ax
call fcn.004a7fa0
mov eax, dword [edi]
mov ecx, dword [eax + 0x54]
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x38], ecx
jle 0x4d7321
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.0048d250
add esp, 0xc
mov eax, dword [ebx - 0x2c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov eax, dword [esi]
mov edx, 0x86
mov ecx, dword [edi]
mov dword [esp + 0x24], eax
mov eax, dword [ebx - 0x2c]
push 1
push 0
mov dword [esp + 0x28], eax
call fcn.004a8030
mov esi, eax
add esp, 8
mov eax, dword [edi]
mov dword [esp + 0x28], eax
test esi, esi
jne 0x4d739f
mov edx, dword [esp + 0x20]
mov ecx, eax
call fcn.004a8690
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
call fcn.004a8690
mov edx, dword [ebx - 0x1c]
mov ecx, dword [edi]
mov dword [esp + 0x3c], esi
call fcn.004a9490
mov eax, dword [ebx - 0x3c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, dword [esp + 0x24]
mov eax, 0x100
test ecx, ecx
je 0x4d73c4
mov dword [esi + 0xc], ecx
test word [ecx + 2], ax
je 0x4d73c4
or word [esi + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x14], eax
mov eax, 0x100
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x4d73df
mov dword [esi + 8], ecx
test word [ecx + 2], ax
je 0x4d73df
or word [esi + 2], ax
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x14], eax
mov ecx, esi
call fcn.004a7fa0
mov eax, dword [ebx - 0x1c]
mov ecx, esi
mov dword [esp + 0x3c], esi
mov dword [esi + 0x10], eax
call fcn.004a7fa0
mov eax, dword [edi]
mov eax, dword [eax + 0x54]
cmp dword [esi + 0x38], eax
jle 0x4d7410
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.0048d250
add esp, 0xc
mov eax, dword [ebx - 0x3c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov edx, dword [ebx - 0x3c]
push dword [ebx - 0x1c]
mov ecx, edi
call fcn.004a9250
add esp, 4
mov edx, eax
mov ecx, edi
push dword [ebx + 4]
call fcn.004a9250
add esp, 4
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
xor edx, edx
jmp 0x4d7429
push dword [ebx - 0x6c]
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 0
push eax
lea eax, [ebx - 0x9c]
xor edx, edx
push eax
push dword [ebx - 0x8c]
lea eax, [ebx - 0x2c]
push dword [esi]
push 0
push eax
call fcn.004b4df0
add esp, 8
lea edx, [ebx - 0x5c]
mov ecx, edi
push eax
lea eax, [ebx - 0x4c]
push eax
call fcn.004b3810
add esp, 0x20
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 2
jmp case.0x4d5245.10
xor eax, eax
cmp dword [ebx - 8], eax
jbe 0x4d74d6
mov ecx, dword [edi]
mov edx, 0x98
push eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
lea eax, [esp + 0x2c]
push eax
call fcn.004a8030
push esi
mov edx, eax
mov dword [esp + 0x34], eax
mov ecx, edi
call fcn.004a7a50
mov eax, dword [esp + 0x34]
add esp, 0xc
mov edx, dword [ebx - 0x3c]
mov ecx, edi
push eax
call fcn.004a9250
add esp, 4
lea ecx, [ebx - 0x1c]
mov esi, eax
mov edx, esi
mov dword [esp + 0x3c], esi
push 1
push ecx
mov ecx, edi
call fcn.004a93b0
add esp, 8
test esi, esi
je case.0x4d5245.10
mov ecx, dword [edi]
mov eax, dword [esi]
cmp eax, dword [ecx + 0x50]
jle 0x4d7520
push str.index
push str.too_many_columns_in__s
push edi
call fcn.0048d250
add esp, 0xc
mov eax, dword [esi]
mov ecx, dword [esi + 0xc]
lea edx, [eax + eax*4]
mov al, byte [ebx + 4]
mov byte [ecx + edx*4 - 8], al
jmp case.0x4d5245.10
xor eax, eax
cmp dword [ebx - 8], eax
jbe 0x4d7589
mov ecx, dword [edi]
mov edx, 0x98
push 1
push eax
call fcn.004a8030
mov ecx, dword [edi]
add esp, 8
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
test eax, eax
jne 0x4d756f
xor edx, edx
call fcn.004a8690
mov ecx, dword [esp + 0x28]
xor edx, edx
call fcn.004a8690
jmp 0x4d7576
mov ecx, eax
call fcn.004a7fa0
mov edx, dword [esp + 0x24]
mov ecx, edi
push esi
call fcn.004a7a50
mov eax, dword [esp + 0x28]
add esp, 4
push eax
xor edx, edx
mov ecx, edi
call fcn.004a9250
add esp, 4
lea ecx, [ebx - 0x1c]
mov esi, eax
mov edx, esi
mov dword [esp + 0x3c], esi
push 1
push ecx
mov ecx, edi
call fcn.004a93b0
add esp, 8
test esi, esi
je case.0x4d5245.10
mov ecx, dword [edi]
mov eax, dword [esi]
cmp eax, dword [ecx + 0x50]
jle 0x4d7520
push str.index
push str.too_many_columns_in__s
push edi
call fcn.0048d250
mov eax, dword [esi]
add esp, 0xc
mov ecx, dword [esi + 0xc]
lea edx, [eax + eax*4]
mov al, byte [ebx + 4]
mov byte [ecx + edx*4 - 8], al
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
jmp case.0x4d5245.10
push dword [esi]
mov edx, dword [ebx + 4]
mov ecx, edi
call fcn.004b4790
add esp, 4
jmp case.0x4d5245.10
push 0
lea eax, [ebx + 4]
mov edx, esi
push 0
push eax
mov ecx, edi
call fcn.004be740
add esp, 0xc
jmp case.0x4d5245.10
push 0
lea eax, [ebx + 4]
mov ecx, edi
push eax
lea eax, [ebx - 0x1c]
lea edx, [ebx - 0x2c]
push eax
call fcn.004be740
add esp, 0xc
jmp case.0x4d5245.10
push 0
lea eax, [ebx - 0x2c]
mov ecx, edi
push esi
push eax
lea edx, [ebx - 0x3c]
call fcn.004be740
add esp, 0xc
jmp case.0x4d5245.10
push 1
jmp 0x4d762e
push 1
lea eax, [ebx - 0x2c]
mov ecx, edi
push esi
lea edx, [ebx - 0x3c]
push eax
call fcn.004be740
add esp, 0xc
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 0x22
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 0x1e
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 0x30
jmp case.0x4d5245.10
movzx eax, byte [ebx + 2]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
mov dword [esp + 0x3c], 0x6a
mov dword [esp + 0x40], eax
jmp case.0x4d5245.10
mov eax, dword [ebx - 0x1c]
mov ecx, dword [eax + 0x24]
mov eax, dword [esi]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebx - 0x1c]
mov eax, dword [esi]
mov dword [ecx + 0x24], eax
mov eax, dword [ebx - 0x1c]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov eax, dword [esi]
mov dword [eax + 0x24], eax
mov eax, dword [esi]
mov dword [esp + 0x3c], eax
jmp case.0x4d5245.10
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
push str.qualified_table_names_are_not_allowed_on_INSERT__UPDATE__and_DELETE_statements_within_triggers
push edi
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
call fcn.0048d250
add esp, 8
jmp case.0x4d5245.10
push str.the_INDEXED_BY_clause_is_not_allowed_on_UPDATE_or_DELETE_statements_within_triggers
push edi
call fcn.0048d250
add esp, 8
jmp case.0x4d5245.10
push str.the_NOT_INDEXED_clause_is_not_allowed_on_UPDATE_or_DELETE_statements_within_triggers
push edi
call fcn.0048d250
add esp, 8
jmp case.0x4d5245.10
mov ecx, dword [edi]
mov edx, 0x38
push 1
push 0
call fcn.004a8030
mov edi, dword [edi]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4d778b
xor edx, edx
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
mov eax, dword [ebx - 0x2c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, esi
call fcn.004a7fa0
mov byte [esi + 1], 4
mov eax, dword [ebx - 0x2c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, dword [edi]
mov edx, 0x38
push 1
push esi
call fcn.004a8030
mov edi, dword [edi]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4d77f6
xor edx, edx
mov ecx, edi
call fcn.004a8690
xor edx, edx
mov ecx, edi
call fcn.004a8690
mov eax, dword [ebx - 0x4c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov ecx, esi
call fcn.004a7fa0
mov al, byte [ebx - 0x2c]
mov byte [esi + 1], al
mov eax, dword [ebx - 0x4c]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 8]
add eax, dword [ebx + 4]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x44], eax
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 1
jmp case.0x4d5245.10
mov dword [esp + 0x3c], 3
jmp case.0x4d5245.10
push dword [ebx + 4]
mov edx, 0x18
push dword [esi]
push dword [ebx - 0x2c]
push ecx
push 0x533dac
mov ecx, edi
call fcn.004afdc0
add esp, 0x14
jmp case.0x4d5245.10
push dword [ebx + 4]
mov edx, 0x19
push 0
push 0
push ecx
push 0x5343e4
mov ecx, edi
call fcn.004afdc0
add esp, 0x14
jmp case.0x4d5245.10
mov edx, dword [ebx - 0x2c]
lea eax, [ebx + 4]
push eax
mov ecx, edi
call fcn.004ae850
add esp, 4
jmp case.0x4d5245.10
lea edx, [ebx + 4]
mov ecx, edi
call fcn.004aef80
jmp case.0x4d5245.10
mov eax, dword [edi]
mov ecx, edi
mov byte [eax + 0xe2], 0
mov edx, dword [ebx + 4]
call fcn.004af240
jmp case.0x4d5245.10
xor edx, edx
mov ecx, edi
call fcn.004ce2d0
jmp case.0x4d5245.10
lea edx, [ebx + 4]
mov ecx, edi
call fcn.004ce2d0
jmp case.0x4d5245.10
lea eax, [ebx + 4]
mov ecx, edi
push eax
lea eax, [ebx - 0x1c]
push eax
lea edx, [ebx - 0x2c]
call fcn.004ce070
add esp, 8
jmp case.0x4d5245.10
mov ecx, edi
call fcn.004ce1f0
mov dword [edi + 0x1f4], 0
mov dword [edi + 0x1f8], 0
jmp case.0x4d5245.10
mov ecx, dword [edi + 0x1f4]
test ecx, ecx
jne 0x4d7917
mov eax, dword [ebx + 4]
mov dword [edi + 0x1f4], eax
mov eax, dword [ebx + 8]
jmp 0x4d791f
mov eax, dword [ebx + 8]
sub eax, ecx
add eax, dword [ebx + 4]
mov dword [edi + 0x1f8], eax
mov ecx, dword [esp + 0x38]
mov al, byte [ecx*2 + 0x51dc78]
movzx edx, byte [ecx*2 + 0x51dc79]
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x18]
movzx esi, byte [esp + 0x13]
mov ecx, dword [eax]
sub ecx, edx
mov dword [eax], ecx
mov eax, edx
shl eax, 4
sub ebx, eax
movzx eax, word [ebx]
movsx eax, word [eax*2 + 0x51e1e0]
add eax, esi
movzx eax, word [eax*2 + 0x51e8e8]
mov edi, eax
cmp eax, 0x275
jae 0x4d79bc
test edx, edx
je 0x4d79a1
movq xmm0, qword [esp + 0x3c]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x18]
mov dword [ecx], eax
mov al, byte [esp + 0x13]
mov byte [ebx + 0x12], al
mov eax, dword [esp + 0x44]
movq qword [ebx + 0x14], xmm0
mov word [ebx + 0x10], di
mov dword [ebx + 0x1c], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x3c]
mov edx, eax
push ecx
mov ecx, dword [esp + 0x1c]
push esi
call fcn.004d5170
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [esp + 0x18]
mov esi, dword [ebx + 8]
test ecx, ecx
js 0x4d79e5
shl ecx, 4
lea eax, [ebx + 0x10]
add eax, ecx
push eax
mov dl, byte [ecx + ebx + 0xe]
mov ecx, ebx
call fcn.004d4fc0
add esp, 4
add dword [ebx], 0xffffffff
mov ecx, dword [ebx]
jns 0x4d79c7
pop edi
mov dword [ebx + 8], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret